We're gradually moving the callbacks to fire only when explicitly asked for. The end goal is that you call wgpuInstanceProcessEvents which should already work today! and eventually wgpuDeviceTick will be deprecated and removed. I think that yes, Tick / ProcessEvents makes the MapAsync callback occur, as well as the OnSubmittedWorkDone callback.
I'm not sure about wgpuAdapterCreateDevice. It is only available in Dawn, not in wgpu-rs, and we haven't agreed upon adding it to the shared webgpu.h header. We also haven't discussed it though. So there's a chance it will stay as a native-only feature, or it will be removed.
SetLoggingCallback sets the callback for other informative logs, but not errors.
So, if you make a Dawn device with the "dump_shaders" toggle enabled, the content of the shaders and compiled shaders will be sent to the logging callback.
It's a Dawn-only thing right now.