The IoC system independently (of main options merging) detects and interprets a mergePolicy of "noexpand" when applied to a path in the component options. However, this policy is only recognised when expanding the options which are registered in a component's defaults. The policy is ignored when expanding component options which are specified as a direct member of the "components" section of the parent component. It is in addition ignored when expanding material which arrives from a demands block.
This occurs since component options are expanded "early" in the IoC expansion pipeline - in fact, before the child component in question instantiates at all or has any options resolved, and so any mergePolicy registered cannot be located. A solution to this also interacts with
FLUID-3681 work on "grades" - in order to deal with material in demands blocks that do NOT refer to COMPONENT_OPTIONS (currently rare, but conceivable) we need to understand the ROLE of the parameter in question.