Heat the olive oil in a large pot over medium heat. When the oil is hot but not smoking, add the sausage. Cook for 3–4 minutes until browned, stirring frequently and breaking up large pieces with a wooden spoon or spatula.
Add the onions, carrots, and celery. Cook for 3–4 minutes, until the onions are translucent, stirring frequently and gently scraping any bits from the bottom of the pot.
Add the garlic, Italian seasoning, and black pepper. Cook for 1 minute, stirring often.
Sprinkle the flour over the ingredients and stir well. Cook for 1 minute, stirring almost constantly.
Add the chicken broth while gently scraping any bits off the bottom of the pot. Raise the heat to medium-high and bring the soup to a boil, about 3–4 minutes.
Once the soup comes to a boil, lower the heat to medium-low, cover, and cook for 15 minutes. Stir occasionally and keep the broth at a steady simmer, adjusting the heat as needed.
Add the gnocchi and raise the heat slightly to bring the soup back to a simmer. Lower the heat to medium-low and cook uncovered for 4–5 minutes, or until the gnocchi begin to float. Stir occasionally.
Add the greens and stir gently until wilted. Cook for 2–3 minutes, or until tender, depending on the type of greens used.
Remove the pot from the heat and allow the liquid to stop simmering. Add the half-and-half, stirring until incorporated. Return the pot to low heat to warm through, but do not let it come to a boil.
Taste and add salt if needed. As a reference, we did not add extra salt to ours. Serve with a generous piece of bread, if desired.