Files
MemRelay/projects/4f53c06a-c6c3-40ec-b2fc-5f019ea45fc0/curated/development/Common Issues & Remedies.md
T

106 lines
4.1 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: Common Issues & Remedies
type: curated
permalink: main/projects/4f53c06a-c6c3-40ec-b2fc-5f019ea45fc0/curated/development/common-issues-remedies
stable_id: b74934b7-77c3-4cbc-acd6-f6f7d8dc350e
scope: project
project_id: 4f53c06a-c6c3-40ec-b2fc-5f019ea45fc0
workspace_type: development
usage_profile_id: null
preference_context: development
document_type: troubleshooting
revision: 1
source_memory_ids: []
source_checkpoint_ids: []
source_file_ids: []
source_git_commit: de28dc8246094e2bc17cab7c764fb4d4a2da71e0
source_git_commits:
- de28dc8246094e2bc17cab7c764fb4d4a2da71e0
source_agent_sync_ids: []
model_connection: Sub2API
model_name: git-restore
source_count: 188
source_revisions: {}
source_dispositions:
processed: 188
unchanged: 0
unsupported: 0
skipped: 0
cited_source_ids:
- git:backend/src/handlers.rs
- git:backend/src/dbus.rs
- git:backend/src/iptables.rs
- git:backend/src/usb_switch.rs
job_cited_source_ids:
- git:backend/src/handlers.rs
- git:backend/src/dbus.rs
- git:backend/src/iptables.rs
- git:backend/src/usb_switch.rs
conflicts: []
supersedes: []
preferences: []
source_cursor: 87
source_hash: 96f0e4026558c8a03161f53b392fcec7359d4d701c4f33576b44e2f308b0ec5a
prompt_version: 2026-08-12.3
schema_version: '3'
curation_job_id: null
created_at: '2026-08-19T18:49:42.050675+00:00'
updated_at: '2026-09-23T14:54:59.500685+00:00'
tags:
- troubleshooting
- issues
- solutions
restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2
---
## 1. Concurrent AT / DBus Commands → `org.ofono.Error.InProgress`
- **Cause**: Overlapping AT commands sent to ofono.
- **Solution**: Use the global serial lock (`with_serial`) provided in `backend/src/serial.rs`. All AT‑related paths in `dbus.rs` and `handlers.rs` already wrap calls with this lock.
- **Reference**: `git:backend/src/dbus.rs`.
## 2. Stale iptables Rules After Crash
- **Cause**: Crash leaves NAT/iptables rules active.
- **Solution**: `iptables_watchdog` (started after a 5 s delay) periodically flushes iptables. Ensure `flush_iptables()` is invoked before any data‑connection change.
- **Reference**: `git:backend/src/iptables.rs`.
## 3. OTA Package Corruption
- **Cause**: Missing files, wrong architecture, or checksum mismatch.
- **Solution**: Run `validate_ota_package()` (in `backend/src/ota.rs`) before install. The CI pipeline also validates checksums via `scripts/pack-ota.sh`.
- **Reference**: `memory:e92dbe0b…`.
## 4. Missing Authentication on AT Gateway
- **Cause**: `/api/at` endpoint is unauthenticated.
- **Remedy**: Implement token‑based auth or whitelist allowed AT commands.
- **Reference**: `git:backend/src/handlers.rs` (open issue).
## 5. Sensitive Fields Redacted
- **Cause**: APN passwords, FRPC tokens stored as `[REDACTED]`.
- **Remedy**: Integrate secure storage (Vaultwarden or encrypted file) and expose UI controls for entry.
- **Reference**: `git:backend/src/config.rs`, `git:frontend/src/pages/Network.tsx`.
## 6. USB Hot‑Switch Instability
- **Cause**: Re‑configuring configfs gadget may fail, leaving the device without USB networking.
- **Remedy**: Use the `switch_usb_mode_advanced` routine; if it fails, fallback to a reboot. Mark the UI option as experimental.
- **Reference**: `git:backend/src/usb_switch.rs`.
## 7. Band‑Mask Mismatch
- **Cause**: UI allows bands unsupported by hardware; backend rejects silently.
- **Remedy**: Capture the backend error response and display it in the UI; validate band selections before sending.
- **Reference**: `git:frontend/src/pages/Network.tsx`.
## 8. FRPC Log Growth
- **Cause**: Logs grow beyond 512 KB without rotation.
- **Remedy**: Adjust `log_rotation_size` in `state.rs` or enable compression.
- **Reference**: `git:backend/src/state.rs`.
## 9. CORS Wide Open
- **Cause**: Development CORS set to `*`.
- **Remedy**: Restrict allowed origins in production (`main.rs`). Add environment‑specific configuration.
- **Reference**: `git:backend/src/main.rs`.
## 10. No Unit Tests
- **Cause**: Repository lacks test suites.
- **Remedy**: Add Rust unit tests for utilities (`utils.rs`) and Jest/RTL tests for frontend components.
- **Reference**: Various source files.
*Each troubleshooting entry is traceable to its source ID as indicated.*