Thanks to @Chad_Smith for the answer.
So, the results you are seeing makes sense now.
Plan As Assembly will check inventory to see if a quantity will be available when it is required on the parent job. If it is not available, it will create a separate job to fulfill the demand. If that part is also marked as Non-Stock, it will create a Job to Job demand link.
Pull As Assembly does not check inventory for available quantity. It assumes you want to manufacture the sub on the same Job that is created for the parent. If Auto Consume Stock is checked off, the engine will check for stock available to fulfill the demand, and if it does not, it will do the previous.
If neither is selected, the engine assumes you are going to determine the way of fulfilling demand yourself.
I’m assuming the demand link in your time phase is WH?