The AuthenticationError exception occurs when we don't have access to a repo
(e.g., user token lacks permissions, repo moved to different org). In this
situation, we cannot reliably send a message back to the user because:
1. The error happens when trying to fetch issue/PR data using the user's token
2. Sending messages requires the GitHub App installation token for the repo
3. If we don't have access to the repo, the installation token likely won't
work either (especially if repo moved to different org)
4. Setting a helpful message that we can't actually deliver is deceptive
Instead, let AuthenticationError fall through to the generic exception handler,
which will:
- Log the full error with stack trace for debugging
- Attempt to send the generic 'Uh oh!' error message (which may also fail)
- At least be honest that we can't help the user in this scenario
This reverts the AuthenticationError handling from GitHub, GitLab, and Slack
integration managers.
Addresses review feedback from @neubig on PR #11473.
- Reverted changes to Linear, Jira, and Jira DC managers
- Keep AuthenticationError handling only in GitHub, GitLab, and Slack managers
Co-authored-by: openhands <openhands@all-hands.dev>
- Updated GitHub manager to use @username format in error message
- Added AuthenticationError handling to GitLab, Linear, Jira, Jira DC, and Slack managers
- All integrations now display user-friendly message directing users to add repo at app.all-hands.dev
- Consistent error handling pattern across all integration managers
Co-authored-by: openhands <openhands@all-hands.dev>
- Add AuthenticationError catch block in github_manager.py start_job method
- Display user-friendly message when GitHub API returns 401 Unauthorized
- Provide clear instructions to users about adding the repo to OpenHands app
- Prevents opaque 'Uh oh!' error message when authentication fails
Fixes#11472