Mobile startup network failures sign users out and delete pending recording files
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- react-native, typescript
- Lĩnh vực
- authentication, mobile
Hướng nghiên cứu
Read apps/mobile/src/auth/AuthContext.tsx and its automatic bootstrap rejection handler, then trace how apps/mobile/src/uploads/recording-upload-provider.tsx handles signedOut. Start by running the described AuthProvider and RecordingUploadProvider fixture for network errors, HTTP 503, and HTTP 401. Done means temporary failures preserve credentials and recording recovery files while HTTP 401 still signs the user out; pull-to-refresh should remain able to retry bootstrap.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
Launching the mobile app with a saved session during a temporary network outage signs the user out and deletes pending recording recovery data. The same happens when the bootstrap endpoint returns HTTP 503 or 429.
The automatic bootstrap failure handler clears the API key and user ID for every error. RecordingUploadProvider then sees signedOut, empties its queue, and calls FileSystem.deleteAsync for the recording directories and recording-upload-queue.json.
A transport or temporary service error should retain the session and recovery files. A server rejection of the credentials with HTTP 401 should still clear the session.
Reproduction
- Sign in to the mobile app and leave a camera recording awaiting upload completion.
- Relaunch with the saved session while the bootstrap request cannot reach the network, or responds with HTTP 503.
- The app returns to sign-in and deletes the pending recording directory and saved retry queue.
Reproduced against 5fcf8e9cb42625443d31be1023cc816284a7caf5 by mounting the actual AuthProvider and RecordingUploadProvider, using the real MobileApiClient with HTTP and native storage fixtures. In both network-error and HTTP 503 cases, the baseline called deletion for file:///documents/cap_123 and file:///documents/recording-upload-queue.json. HTTP 401 retained its expected sign-out behavior.
Additional Context
- Affected code:
apps/mobile/src/auth/AuthContext.tsx, automatic bootstrap rejection handler; downstream cleanup inapps/mobile/src/uploads/recording-upload-provider.tsx. - Environment: current mobile app source, Bun 1.4.4, Node 24.22.1, Vitest with native module and HTTP fixtures. No physical iOS device verification.
- Existing pull-to-refresh can retry bootstrap after connectivity returns. The credentials should remain available for that retry.
- Ngôn ngữ chính
- Rust
- Star
- 23.7k
- Fork
- 2.1k
- Merge trung bình
- 1 ngày 55 phút
- Pull request đã merge (30 ngày)
- 697
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CapSoftware/Cap
-
Web player intercepts ⌘⇧M and blocks Chrome profile-menu shortcutCó thể đã có người làm @AatmanAJ đã nhận 14 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 80/100
CapSoftware/Cap#2596 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
CapSoftware/Cap#2384 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Dashboard pagination causes full page reloads on self-hosted CapCó thể đã có người làm @Dewin đã nhận 42 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
CapSoftware/Cap#2305 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
CapSoftware/Cap#1714 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
CapSoftware/Cap#3578 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của CapSoftware/Cap
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
Maintainer thường phản hồi trong vòng 1 ngày
-
priority middle
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 62/100
KATO-Hiro/AtCoderClans#12940 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
Maintainer thường phản hồi trong vòng 1 ngày
-
o8 next debug build aborts on Glass to Dark appearance switch (nil identifier messaged before check)Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
hurttlocker/o8#5112 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
Maintainer thường phản hồi trong vòng 1 ngày