The two steps are required, because mySettings is an ordered array, with each element of the array being a map/dict. Hence the second range mentioned in my op.
It just seems like overkill to create another loop just to get the key/value for a dict that I know only has one item. Guess I didn’t miss anything.
By the design, you know only (and want) only one item. Then why do you bother to treat it as a slice or dict? Why don’t just use it out of the box like this {{ .Params.mySettings }}?