I think this has to do with the batch system, though I am not sure.
I have written an install profile for D8, everything was fine then D8 changed (as it does) and there was a problem with the script when it was trying to register node types. Before the node types where in the config system they where registered in code. I did this with a loop (so did the standard install profile). This caused an error that wasn't getting reported.
I have reproduced this by putting the following code into the minimal install profile.
for($i = 0; $i == 10; $i ++) {
fake_function_of_doom();
}
without the loop it will error out just fine, however, with the loop it errors silently. Depending on the function it will error silently and just hang or it will try and restart the installation process.