In a pot over medium heat, swirl the oil. Add the garlic and ginger, stirring until it becomes fragrant, about 1 minute. Add the curry paste, fish sauce, sugar, sweet potatoes and bok choy. Pour the chicken broth over everything, stirring to combine. Bring the soup up to a low boil, turn down the heat, and simmer about 15 minutes or until the sweet potatoes are just tender.
Meanwhile, bring a pot of water to a boil. When boiling, remove the pot from the heat. Place the rice noodles into the water and let sit 3-4 minutes, until tender. Drain promptly and rinse with cold water, being careful not to overcook. Set aside.
When the sweet potatoes are just beginning to become tender, add the bamboo shoots and coconut milk. Season with salt to taste (remember you’ll be adding noodles and halibut later, so you’ll want to season generously). Carefully place the halibut portions into the soup, poach 4-5 minutes until just cooked to medium in the center. Gently remove the halibut portions from the pot and transfer them to a plate to rest. To the soup, stir in the juice of half a lime.
To serve the soup: Add a generous handful of rice noodles to the bottom of a soup bowl. Place a halibut portion on top of the noodles. Ladle the soup over top of the halibut and noodles, being sure to get lots of sweet potatoes and bok choy. Top with cilantro, red onion, thai basil, and green onions, as desired. Serve with lime wedges and Sriracha on the side.