Brown the protein (if using): Heat olive oil in a large pot over medium heat. Add ground turkey or chicken with a pinch of salt and pepper.
Cook, breaking it up, until lightly browned, 4–6 minutes. Transfer to a plate.
Sweat the aromatics: In the same pot, add onion, carrots, and celery with a pinch of salt. Cook until softened, 6–8 minutes.
Stir in garlic for 30 seconds until fragrant.
Build the base: Add tomato paste, dried oregano, dried basil, and red pepper flakes. Cook 1 minute, stirring, to toast the spices.
Add liquids and lentils: Pour in broth and the canned tomatoes. Add bay leaf, Parmesan rind (if using), and the rinsed lentils.
Return the browned meat to the pot. Bring to a boil, then lower to a steady simmer for 20 minutes.
Stir in veggies and beans: Add zucchini, cannellini beans, and chickpeas. Simmer 10 minutes more until lentils are tender.
Cook the pasta: Stir in the pasta and cook until just al dente, 7–10 minutes depending on shape.
If the soup thickens too much, add a splash of hot water or extra broth.
Finish with greens: Add spinach or kale and cook 1–2 minutes until wilted. Squeeze in half a lemon. Taste and season with salt and pepper.
Serve: Remove bay leaf and Parmesan rind.
Ladle into bowls and top with chopped parsley or basil. Add grated Parmesan if you like.