To make the ribs: Whisk together the water, five-spice, sugar and salt until dissolved. Cut the racks in half and submerge fully in the brining liquid. Refrigerate overnight.
Preheat an oven to 300 degrees F.
Line a sheet tray with enough foil to completely cover and seal the pork ribs. Evenly spread the sliced onions on the foil and place the butter on top. Remove the ribs from the liquid and season both sides with salt and pepper. Place the ribs in one layer on top of the onions, and fold the foil over making sure to tightly seal the package. Roast undisturbed for 2 hours.
To make the sauce: Coat a small saucepan with the canola oil. Over medium heat, sweat the onions and garlic until lightly browned, about 10 minutes. Add the sugar, cranberries, cranberry juice, vinegar and chipotle peppers. Simmer until the liquid is reduced by half. Puree the sauce in a blender until very smooth, season with salt and pepper. Serve immediately or store in the refrigerator for up to a week.
Remove the ribs from the oven, unwrap and baste the ribs with the sauce. Increase oven temperature to 350 degrees F and bake the ribs uncovered for 10 minutes until the sauce is lightly browned.
Divide the smothered onions onto 4 plates and serve with half a rack per person, or serve family style on a platter.
Recipe courtesy of Tom Berry, Bambara Restaurant, Cambridge, Mass.