In a large heavy pot, heat oil over high. Add meat and cook, breaking it up with a wooden spoon, until it begins to brown, about 5 minutes. Add onion, carrots, and garlic and cook until meat is browned and onion is soft, about 5 minutes. Season with salt and pepper, add tomato puree, and bring to a rapid simmer.
Cook, stirring occasionally, until liquid is slightly reduced, about 15 minutes. Season with salt and pepper. Serve sauce over gnocchi, topped with Parmesan and basil, if desired.