[...] YANG values the time and effort of the
readers of models above those of modules writers and YANG tool-chain
A well-defined grouping, e.g. containing a set of parameters that are familiar to most readers, can be a great help in saving “time and effort” for the readers - it reduces clutter and makes it easier to get “the big picture” of the module. On the other hand, if the grouping just contains some more or less random statements that happen to appear in multiple places, and primarily exists to save a bit of typing for the module writer, the effect is the opposite - the reader has to interrupt the flow of reading and go and check the grouping contents whenever there is a uses statement for it.
A grouping whose contents effectively depend on where it is used is even more problematic - it is not enough to check the contents of the grouping, the reader must go back and check the context of the uses statement to see what the actual contents will be in the current case.
A good test is to see if you can come up with a short and descriptive name for the grouping.