Describe the bug
On Buzz Mobile for iOS, an image upload against a self-hosted relay can remain in the composer indefinitely with no way to cancel it. In the observed case the request eventually failed with:
upload failed (401): {"error":"authentication failed"}
The failed state can be cleared only by leaving or retrying the composer flow. The underlying cause of the 401 is not yet known.
Steps to reproduce
- Pair Buzz Mobile with a self-hosted community.
- Connect over cellular.
- Open a private channel and select a small image from Photos.
- Observe the attachment progress tile.
- If the request stalls or authentication fails, try to cancel or dismiss it.
Expected behavior
- A pending upload can be cancelled without leaving the composer.
- An upload that never completes times out with actionable copy.
- A failed-upload message can be dismissed.
- The relay or client log explains why a valid paired member received a 401.
Version and platform
- Buzz Mobile: v0.4.12
- Platform: iOS
- Relay: self-hosted
87b3fcd, behind HTTPS/WSS
- Network: cellular
Logs / additional context
A focused recovery change can add cancellation, timeout, and dismiss controls without weakening relay authentication. The 401 root cause should remain a separate diagnostic follow-up unless it can be reproduced reliably.
Describe the bug
On Buzz Mobile for iOS, an image upload against a self-hosted relay can remain in the composer indefinitely with no way to cancel it. In the observed case the request eventually failed with:
The failed state can be cleared only by leaving or retrying the composer flow. The underlying cause of the 401 is not yet known.
Steps to reproduce
Expected behavior
Version and platform
87b3fcd, behind HTTPS/WSSLogs / additional context
A focused recovery change can add cancellation, timeout, and dismiss controls without weakening relay authentication. The 401 root cause should remain a separate diagnostic follow-up unless it can be reproduced reliably.