The WEBGL_get_buffer_sub_data_async proposal has been rejected in favor of implementation changes to allow asynchronous readback using the synchronous primitives + fences.
https://www.khronos.org/webgl/public-mailing-list/public_webgl/1712/msg00009.php
https://github.com/jdashg/misc/blob/master/remoted-readback.md
I'm working on that implementation now.
* Remove old prototype code
* Reject WebGL extension spec
* Make fences asynchronous (no round trip) similar to the way queries work
* Maintain a shadow copy of buffers allocated with GL_*_READ usage, update it according to Jeff's proposal, use it for readbacks
* WebGL CTS tests if possible (gl_tests if not)
* Spec addition (may have to be non-normative)
Comment 1 by kainino@chromium.org
, Apr 2 2018