In a large soup pot or dutch oven, heat olive oil over medium heat. Season the ribs with salt and pepper, and dredge in the flour. Add them to the pot and cook over moderate heat, turning once, until browned on all sides, about 10 minutes. Transfer the ribs to a plate and set aside.
Add the onions, carrots, parsley, and garlic to the pot and cook over low heat, stirring occasionally, until the vegetables become soft, about 15 minutes.
Add canned tomatoes, tomato paste, cocoa powder, rosemary, thyme, oregano, bay leaves, beef broth, and red wine to the pot, and bring the mixture to a boil. Return the ribs to the pot and let it simmer over low heat, covered, for 1 hour and 30 minutes. Remove the lid and simmer on low for an additional hour or until the meat is tender, stirring occasionally. Remove the ribs from the pot, discard the bones, and shred the meat.
Transfer the liquid and vegetables to a blender (remove bay leaves) and puree until smooth. Return the sauce and the shredded meat to the pot. Season with salt and pepper.
Meanwhile, add cooked pasta to the meat sauce and stir to combine. Add the reserved pasta liquid 1/4 cup at a time, if needed, to moisten the pasta. Serve immediately with cheese.