JS driver `ast#run` must not throw errors, must call cb or reject promise

PR for issue #2852