Problem
NIP-42 authentication errors in the EnhancedNostrProvider are logged to console but not propagated to the UI, leading to silent failures where users can't interact with private groups without knowing why.
Current Behavior
// In EnhancedNostrProvider.tsx
} catch (error) {
console.error('Failed to handle AUTH challenge:', error);
// Error is logged but not surfaced to user
}
``
## Impact
- Users get stuck unable to access private NIP-29 groups
- No feedback about what went wrong
- Poor user experience for authentication failures
- Difficult to debug connection issues
## Expected Behavior
- Authentication errors should be displayed to users
- Clear messaging about what went wrong
- Actionable steps for users to resolve issues
- Retry mechanisms where appropriate
## Acceptance Criteria
- [ ] Error state management in EnhancedNostrProvider
- [ ] UI components to display auth errors
- [ ] Clear error messages for different failure types
- [ ] Retry functionality for failed authentications
- [ ] Loading states during authentication
## Error Types to Handle
- Signer not available
- AUTH challenge rejected
- Network timeouts
- Invalid credentials
- Relay connection failures
Tags: #nip29
Problem
NIP-42 authentication errors in the EnhancedNostrProvider are logged to console but not propagated to the UI, leading to silent failures where users can't interact with private groups without knowing why.
Current Behavior