and block when you kick
it off on systems that don't have parallel compilation.
I'm afraid that's not a viable option, because:
It would defeat the purpose
getting the COMPLETION_STATUS_ARB has to return false if compilation or linking hasn't finished. It's a non blocking call.
However, since the browser runs the driver in its own process (at least in some cases), the browser can emulate the non blocking behavior (in a very suboptimal way). Upon the webgl context asking for COMPLETION_STATUS_ARB, it could query the underlying GL backend for the compile or link status, which will block the GPU process, but the call from JS could proceed to return false right away. I'm not sure it'd be a good idea to emulate it that way.