fix chat promise