Back to all reviewers

Never ignore errors silently

google-gemini/gemini-cli
Based on 5 comments
TSX

All errors must be explicitly handled through catching, logging, or user feedback. Silent error suppression makes debugging impossible and creates poor user experiences.

Error Handling TSX

Reviewer Prompt

All errors must be explicitly handled through catching, logging, or user feedback. Silent error suppression makes debugging impossible and creates poor user experiences.

Always do one of the following:

  • Add .catch() handlers to promises to prevent unhandled rejections
  • Log errors with appropriate detail (error.message for users, error.stack in debug mode)
  • Show error feedback to users even in minimal UI modes
  • Set up global unhandled rejection handlers for critical failures

Example of proper error handling:

// Bad: Silent failure
checkForUpdates().then((info) => {
  // handle success
});

// Good: Explicit error handling  
checkForUpdates().then((info) => {
  // handle success
}).catch((error) => {
  console.error('Update check failed:', error.message);
});

// Bad: Removing error logs
} catch (error) {
  // Ignore clipboard image errors
}

// Good: Maintain error visibility
} catch (error) {
  console.error('Error handling clipboard image:', error);
}

This ensures errors are visible to developers during debugging and users understand when operations fail, enabling proper troubleshooting and recovery.

5
Comments Analyzed
TSX
Primary Language
Error Handling
Category

Source Discussions