Heat the oven to 425°F.
Zest half of 1 lime into a medium bowl. Juice half the lime into the bowl, add the onion and a pinch of salt, and toss to coat. Set aside to pickle while you prepare the rest of the salad.
On a sheet pan, toss the sweet potato cubes with 1 1/2 tablespoons of the oil (I rarely call for half tablespoons, but in this case I really do think it's the perfect amount), followed by the chili powder, 3/4 teaspoon salt, 1/2 teaspoon cumin, and several grinds black pepper. Roast for 15 minutes. Flip and continue to roast until tender, 5 to 10 minutes more. Let cool for at least 10 minutes.
Meanwhile, juice the remaining 1 1/2 limes into a large bowl. Add the garlic, cilantro, remaining 2 tablespoons oil, remaining 1/4 teaspoon cumin, and 1/4 teaspoon salt and whisk to combine. Taste and season with more salt as needed.
Add the black beans, romaine, avocado, and lime-pickled onions to the bowl. Add the sweet potatoes once they've cooled enough to your liking, then toss to combine. Finish with any additional toppings (cheese, toasted pepitas, and/or tortilla strips).