1. Pulse tomatoes and their juice in a food processor until slightly chunky, about 5 pulses.
2. In a large saucepan, bring tomatoes, beans, chipotle, sugar, and 1/2 teaspoon salt to a boil, covered.
3. Decrease to a simmer and continue to cook.
4. Meanwhile, heat oil in a large Dutch oven over medium heat until shimmering.
5. Add in onion, chili powder, cumin, and 1/4 teaspoon salt; cook until softened, about 5 minutes.
6. Stir in garlic and cook until fragrant, about 30 seconds.
7. Increase heat to med-high and add beef.
8. Cook, breaking up beef with spoon, until no longer pink, about 3 minutes.
9. Stir in the tomato-bean mixture, scraping up any browned bits.
10. Bring to a simmer and cook until slightly thickened, about 15 minutes.
11. Season to taste with salt and pepper before serving.