Heat olive oil in a large saucepot over medium heat. Add onion, mushrooms, and carrot, and saute until vegetables are softened, about 7-8 minutes.
Add ground beef and break up meat into small chunks using a wooden spoon. Cook until beef is browned. Season with salt and pepper.
Add chili powder, paprika, Italian seasoning, garlic, and tomato paste, stirring to combine. Saute for 1 minute. Add worcestershire, tomatoes, beef stock, and milk. Bring to a boil and add pasta. Simmer and cook until pasta is cooked, about 10 minutes, stirring occasionally.
Remove pot from heat and add cheddar and parmesan, stirring until cheese melts. Adjust seasoning with salt and pepper and sprinkle chives on top. Serve hot.
Notes
If almost all of the liquid has evaporated before the pasta is done cooking, add another ½ cup water or beef stock.You can use any shortcut pasta such as macaroni, orecchiette, or cavatappi.