Melt the butter in a skillet over medium heat. Add the garlic and stir until fragrant, about 30 seconds.
Add the mushrooms and onions and cook stirring until the mushrooms have released their liquid. About 5 minutes.
Add the sausage and cook for about 10 minutes, breaking up the clumps with a wooden spoon. If there is a lot of fat, drain off the excess.
Turn the heat to medium high and add the wine. Let the wine come to a boil and cook, stirring, scraping up any brown bits, until the wine has almost all evaporated. About 5 minutes.
Stir in the broth, cinnamon and a grind or two of fresh black pepper. Simmer until the the broth has been reduced by about half. About 5-6 minutes.
Turn the heat back down to medium and stir in the tomatoes. Cook for about 5 minutes.
While the sauce is simmering, cook the pasta for one minute less that the package directions. Drain and reserve about 1/2 cup of the pasta water.
Add the pasta to the skillet and stir to combine. The pasta will finish cooking in the sauce. Taste and adjust the seasoning. Add a little of the pasta water if needed.