Co-worker discovered a bug with (distributed) grouping when multiple fl params are specified.
StoredFieldsShardRequestFactory has very (old and) brittle code that assumes there will be 0 or 1 fl params in the original request that it should inspect to see if it needs to append (via string concat) the uniqueKey field onto in order to collate the returned stored fields into their respective (grouped) documents – and then ignores any additional fl params that may exist in the original request when it does so.
The net result is that only the uniqueKey field and whatever fields are specified in the first fl param specified are fetched from each shard and ultimately returned.
The only workaround is to replace multiple fl params with a single fl param containing a comma seperated list of the requested fields.
Bug is trivial to reproduce with bin/solr -e cloud -noprompt by comparing these requests which should all be equivilent...