Preheat oven to 300 degrees F.
Heat 3 tablespoons of the olive oil in a large deep, ovenproof pot over medium heat until hot. Season the shanks with salt and pepper. Brown on all sides, about 10 minutes, and remove to a plate.
Raise the heat to medium-high, add the mushrooms, and do not move them until they begin to brown (about 1 minute). Season with salt and pepper. Saute until brown all over, about 5 minutes. Remove to another plate and reserve for final assembly.
Reduce the heat to medium; add the remaining 3 tablespoons olive oil to the pot. Add the garlic and saute briefly until light brown. Add the onion, carrot and celery. Season with salt and pepper, and saute for another 10 minutes. Add the wine and bay leaf. Bring to a boil over high heat and cook until reduced by half. Add the stock and tomatoes and bring to a boil again. Add fresh oregano. Season with salt and pepper.
Return the meat to the pot, cover, and place in the oven to braise until fork tender. Test at 2 hours, but the shanks may take as long as 4 hours. Allow the meat to cool in the liquid to room temperature. Remove from the braising liquid and reserve separately. Skim off and discard the fat from the braising liquid. (The recipe may be made to this point a day ahead, covered, and refrigerated).
Bring a large pot of salted water to a boil. Add pasta and cook until al dente, about 12 minutes, then drain.
Pour the defatted braising liquids into a saucepan and bring to a boil. Reduce the heat and simmer for 10 minutes. Add the basil and return the shanks to the sauce and simmer gently, just until heated. Remove and keep warm. Add the mushrooms and pasta to the sauce and heat gently until warmed through. Pour onto a large, deep platter or divide among plates and top with the shanks.