Bring a pot of salted water to boil. Add the spaghetti and cook as package directs. Reserve 1/2 cup cooking water, then drain.
Meanwhile, heat 1 teaspoons oil in a large nonstick skillet over medium heat. Add the sausage and cook, breaking it up with a wooden spoon, until browned, about 5 minutes. Transfer to a bowl.
Add the remaining 2 teaspoons oil to the skillet and increase the heat to medium-high. Add the mushrooms, season with salt and pepper and cook until lightly browned, 3-4 minutes. Stir in the tomato paste and rosemary and cook, stirring 1 minute. Return the sausage to the skillet, then add the cream and 1 cup water; bring to a gentle simmer and cook until slightly thickened, 8-10 minutes. Season with salt and pepper.
Add the spaghetti to the skillet and toss with the sauce, adding some of the reserved cooking water to loosen, if needed. Top with shredded parmesan, if desired.