Not sure which issue you are saying it is OK to punt for, but when you said "on second thought, how will this work if the private node is defined later?" that is definitely a problem.

Before, `utils.isPrivateNode(name)` would only check to see if the name ended in an underscore. Therefore, it would work correctly regardless of the order in which nodes were defined.

In order to do this correctly, we need to check the scopes of these dependencies at the compile step.