feat: add update error handling