Combine onions, chiles, and carrots in a food processor, and process until finely chopped. Heat oil in a 12" skillet over medium-high heat. Add chopped vegetables, and cook, stirring, until soft and caramelized, about 20 minutes. Add tomato paste, and cook until lightly caramelized, about 3 minutes. Add tomatoes, season with salt and pepper, and cook, stirring, until mixture is thick and slightly dry, about 45 minutes. Remove from heat and stir in cilantro; let filling cool.
Meanwhile, combine 2 tbsp. salt, semolina, and 2 cups water in a bowl, and stir until dough forms. Transfer to a work surface, and knead until the dough is smooth and no longer sticky, about 8 minutes. Divide dough into 8 equal pieces, shape into balls, and place on a lightly oiled baking sheet; cover loosely with plastic wrap and let rest for 30 minutes.
Lightly oil a work surface (marble works best), and working one at a time, flatten dough ball into a disk using the heel of your hands until it is about 1⁄6" thick. Gently pull the edges to stretch the dough into a paper-thin rectangle, about 15" long and 12" wide. Place a scant 1⁄2 cup filling in the center of the dough, and spread it out to a 6" x 4" rectangle. Fold the long sides of the rectangle over the filling, and then fold over the short sides, pressing to seal and enclose the filling. Repeat with remaining dough and filling.
Heat a 12" nonstick skillet over medium heat, place one packet seam side-down in skillet, and cook, flipping once, until browned in spots, about 12 minutes; repeat with remaining packets.