01 - Heat olive oil and butter in a large deep skillet or Dutch oven over medium heat until butter melts and begins to shimmer.
02 - Add onions, carrots, and celery to the pan. Sauté for 5 to 6 minutes, stirring occasionally, until vegetables are softened and onions become translucent.
03 - Stir in minced garlic and cook for 30 seconds until fragrant, being careful not to burn it.
04 - Sprinkle flour evenly over the vegetables while stirring constantly. Cook for 1 to 2 minutes to form a roux, allowing the raw flour taste to cook off.
05 - Gradually whisk in chicken broth and milk or half-and-half, stirring continuously to prevent lumps from forming.
06 - Add dried thyme, sage, salt, and black pepper. Bring mixture to a gentle simmer and cook for approximately 5 minutes, stirring occasionally, until sauce thickens enough to coat the back of a spoon.
07 - Stir in uncooked gnocchi, cooked chicken, and frozen peas. Gently fold to combine, ensuring gnocchi are fully submerged in the sauce.
08 - Cover the pan and simmer for 10 to 12 minutes, stirring occasionally to prevent sticking, until gnocchi are tender and sauce reaches a creamy consistency.
09 - Remove from heat. Stir in grated Parmesan cheese if using, allowing residual heat to melt it into the sauce.
10 - Transfer to serving bowls and garnish with chopped fresh parsley. Serve immediately while hot.