1large yellow onion, roughly diced (1 1/2 to 2 cups)
3garlic cloves, minced
1large carrot, roughly diced (1 scant cup)
1jalapeño pepper, finely diced (about 1/3 cup)
2 tablespoonschili powder
1/4 teaspooncayenne pepper (optional)
1/4 cuptomato paste
1 1/2 cupschicken broth
1 tablespoonbrown sugar
1 1/2 cupstomato purée
1(14.5-ounce) can fire-roasted tomatoes
2(15-ounce) cans beans (see Author Notes), drained and rinsed
1lime, juice of
Instructions
Add the vegetable oil and bacon to a large Dutch oven or pot, and cook over medium heat until the bacon is crispy. Remove with a slotted spoon and transfer to a plate. Toss a bit of the fat if there’s a lot, leaving at least 2 tablespoons in the pot.
Increase the heat to high and add the beef. Brown thoroughly on all sides as you break it apart, sprinkling with several generous pinches of salt as it cooks. Remove with a slotted spoon and transfer to a plate. Again, toss a bit of the rendered fat, leaving about 2 tablespoons in the pot.
Lower the heat to medium and add the onion, garlic, carrot, and jalapeño to the fat. Sauté 8-ish minutes, until the onion is translucent and beginning to take on color around the edges. Nudge the onion mixture to the sides, and add the chili powder, cayenne if using, and tomato paste to center. Stir into the onion mixture and, once fully combined, let it fry another minute.
Add the chicken broth, brown sugar, tomato purée, fire-roasted tomatoes, 1 cup of water, and another couple pinches of salt. Use your spatula or spoon to scrape up any bits on the bottom of the pan. Add the beans, reserved beef, and half of the reserved bacon. Bring mixture to a jolly simmer and cook 20 to 25 minutes, or until juices have thickened slightly and are becoming jammy around the edges. Just before serving, stir in the lime juice, and season to taste with more salt if needed.
Serve sprinkled with the reserved crisped bacon, plus any other toppings you like.