....less than 2# of specialty grains (Half chocolate malt and half oats and wheat flakes) Varying the specials (in BS) made a big difference in color (and presumably/hopefully flavor & feel) but no difference in initial gravity.
I concluded that (for this recipe) the chocolate malt grain dominated color and the extracts provided the fermentables. ............One could use the "Partial Mash" type but it seems unnecessary if the specialty grain bill is a small source of fermentables.
You are mostly correct on the diff b/t steeping and mashing; however, even charred grains like roasted and chocolate have gravity to contribute. If you scroll thru the grains list you will see varying PPG (potential points per pound per gallon, I think) for each grain. DME and sugars are highest, then base grains, crystals, then the darked roasted stuff, etc. Within a recipe, if you toggle b/t the three settings of all-grain, partial mash and extract, you will see the potential gravity from those grains that require mashing will drop out if you select extract.
So, the setting for extract is only accurate (on the OG) if you are using only steeping grains, as it will ignore the gravity from any grains that do require mashing. But to your point, if you're using those grains strictly for their color and possibly flavor, and do not need their potential gravity to reach your OG, then you're fine.
The big advantage in partial mash over extract/steep is that you can use any grain you desire and get that unique character from a Vienna or Munich grain etc.