reconstruct codes
optimize auth workflow
more meaningful error messages