I recently had issues provisioning Windows 10 v1703 and wanted to share the solution. It was not happening on every machine but appeared to be at random.
The problem was that once the OS had loaded and signed in for the first time, the OSProvisioning Agent would fail to install. This would in turn kill the entire process.
When the OS starts up the first time, Cortana would look for and install updates. This is where the agent would actually fail to install.
In order to stop this from occurring I had to edit our unattend.xml OOBE settings to disable Machine and User OOBE as shown below.
Once these changes were added, Cortana never popped up and the machine did a final reboot after all the devices had installed. The desktop finally appeared and the OSProvisioning Agent installed.
This will not only stop the Cortana animation from popping up on each machine which can be annoying in a quiet office but it will also put enough time in-between the OS finishing setup and the Agent attempting to install.