Place a 3-4 pound whole fresh chicken, 2 large yellow onions (peeled and quartered), and 1 head garlic (cut in half), 2 dried bay leaves, 1/2 small jalapeno, 1/2 teaspoon kosher salt, and 1/2 tablespoon peppercorns into a large stock pot, soup pan, or Dutch oven. Cover with 12 cups water.: The first inhale when you add the water is wonderful, expect an immediate vegetal and poultry aroma as the pot warms. You will notice tiny bubbles forming along the metal when the water heats, but you are not aiming for a rolling boil right now. This gentle start lets collagen and flavors leach slowly from the bones, producing a clearer broth and richer mouthfeel. If you crank the heat too high you'll agitate the proteins and create cloudiness, so keep things low and steady. A frequent misstep here is overfilling the pot, which can cause spillage when simmering, so leave headspace for bubbling.
Bring the stock to a simmer over medium heat. As the soup comes to a simmer, remove any cloudy material that rises to the top of the broth with a fine-mesh strainer scum off the top of the soup as it forms and discard.: Listen for the change from quiet warming to the soft hiss of bubbles breaking at the edge, that is your cue that proteins are coagulating and impurities are separating. Skimming these scum bits improves clarity and keeps the flavor clean, and using a fine mesh strainer gives you control. The smell becomes more brothlike, moving from raw poultry to savory depth. Avoid stirring vigorously, because that suspends the solids and makes skimming harder.
Once the soup is simmering (small bubbles around the edges of the pan), turn the heat to medium-low and cover the pan with a lid. Simmer for 1 hour and 30 minutes, or until the chicken is tender and falling apart.: During this long simmer you should notice a gentle steady aroma that deepens over time, the kitchen filling with warm, homey notes. Check occasionally that the simmer remains gentle, adjusting the flame so bubbles do not become angry and rapid. This slow process extracts gelatin and flavor while keeping the broth clear and balanced. A common mistake is lifting the lid too often, which lets heat escape and stretches the cooking time.
Remove the chicken and place it on cutting board or large bowl/casserole dish. Discard onions, garlic bulb, bay leaves, and peppercorns. You can choose to strain the broth or simply use a spoon to fish out the ingredients from the broth.: The chicken will feel tender and hot; when you pull it free you will see the meat start to separate from the bones. The broth should now smell rounded and savory without sharp raw notes. Removing aromatics and spices prevents them from overcooking and turning bitter. If you choose to strain, you will notice the broth shine and look clearer; failing to remove all solids can leave gritty textures in the final soup.
Optional: Refrigerate broth for a few hours or overnight to let fat consolidate and harden on the surface of the soup. Once the fat rises to the surface, scoop it out and discard.: Refrigerate broth for a few hours or overnight to let fat consolidate and harden on the surface of the soup. Once the fat rises to the surface, scoop it out and discard : Cooling reveals the fat as a pale layer on top, and removing it yields a lighter mouthfeel and cleaner flavor. You will hear a soft clink when the cold fat hardens if you tap the container, which is oddly satisfying. The downside is waiting, but the payoff is a less greasy bowl. A common error is trying to remove warm fat with a spoon, which is messy and less effective compared to chilled solidified fat.
If needed, return the broth to the soup pan and bring back to a simmer over medium heat. Once simmering, add the 2 large Yukon Gold potatoes (cubed), 2 large sweet potatoes (cubed), 3 large carrots (sliced), and 1 teaspoon reduced sodium soy sauce and cook until vegetables are tender about 20-30 minutes.: As the vegetables hit the simmering broth you will hear a gentle bubbling and smell the sweetness of the root vegetables entering the pot. The steam will carry a layered aroma of starch and vegetal sweetness, a sign that the soup is rounding out. Keeping the simmer steady ensures even cooking and prevents overmashing of the sweet potatoes. A typical slip is overcrowding the pot with too many pieces at once, which causes uneven cooking and longer times to reach tenderness.
While the vegetables are simmering, prepare the chicken. Remove the skin and discard. Remove the meat from the bones and discard the bones. Shred or dice the chicken into bite-sized pieces. Measure out 2-3 cups of the chicken and save the rest to use in another recipe.: Working with warm chicken feels satisfying, and you will see the meat separate easily if it is cooked properly. The texture should be tender, moist, and slightly fibrous when shredded. Keeping some cooked meat for other meals is efficient, and saving the measured 2 to 3 cups guarantees the soup stays balanced. One pitfall is leaving the skin on, which can add unwanted greasiness; removing it keeps the soup cleaner.
Once the vegetables are tender, add 2-3 cups of the shredded chicken to the soup and simmer for 2-5 minutes, just to warm through.: The brief simmer warms the chicken and allows its juices to mingle with the vegetables without breaking down the meat. You will notice a shimmering surface as the protein heats and the aromatic balance settles. This short finish preserves texture and prevents the chicken from becoming stringy. Overcooking here flattens flavor and yields dry pieces, so be mindful of timing.
Remove the soup from the heat and add the juice of 1 large lemon to the soup. Stir to combine. Taste and season with salt and pepper as desired.: The final squeeze of lemon should make the broth pop, cutting through richness with a bright clean note. Stirring integrates the citrus, and a careful taste test lets you adjust seasoning just before serving. The aroma at this point is lively and balanced, and that first spoon will feel fresh and satisfying. Adding too much acid at once can dominate the bowl, so start with less and add more if needed.