Spread the beans on a baking sheet and feel for any stones. Rinse the beans well, put them in a large pot, cover by 3 to 4 inches of water, add the salt, shallot or onion, and cilantro stems, and bring to a boil. Reduce the heat to a simmer, cover, and cook until the beans are very tender but not falling apart, 45 minutes to 1-1-1/2 hours, or longer if necessary. Start checking early because beans cook at different rates; if the water level gets low, add more. When the beans are cooked, let them cool in their liquid for about 15 minutes, then drain and transfer them to a large bowl.
While the beans are cooking, heat the broiler to high. Put the red pepper on a small foil-covered baking sheet and broil until the skin is completely charred, turning to char all sides. When the pepper is blackened, wrap it loosely in the foil and leave it to steam and cool. When cool enough to handle, pull out the core, scrape off all the skin, scrape out the seeds, and cut the flesh into 1/4-inch dice. You should have about 1/2 cup.
Meanwhile, in a medium bowl, whisk together the chile, shallot, garlic, paprika, cumin, salt, pepper, and lemon zest and juice. Let the mixture sit for at least 30 minutes so the shallots soften and the flavors marry.
Toss this dressing with the warm beans, using a rubber spatula to gently fold so the beans get well coated but not smashed. Let the beans sit for a few minutes and then toss a few more times. It may seem like too much liquid at first, but the beans will gradually absorb it all. Fold in the olive oil, roasted pepper, cilantro, parsley, and mint. Taste for seasoning and serve.