archy/.claude/memory/project_mesh_198_issue.md
Dorian d37ec1dea5 feat: v1.2.0-alpha — E2E encrypted mesh relay, steganography, relay status polling
Phase 5 mesh networking:
- E2E encrypted TX relay (X25519 + ChaCha20-Poly1305) — non-Archy nodes
  relay encrypted blobs transparently via Meshcore native routing
- Steganographic encoding modes (WeatherStation, SensorNetwork) — traffic
  looks like sensor data on the wire, 0xAA marker, configurable per-node
- Pre-flight Bitcoin Core health check on relay node — specific error codes
  (bitcoin_unreachable, bitcoin_syncing, tx_rejected) instead of generic fails
- mesh.relay-status RPC endpoint — frontend polls for relay result every 3s
- On-Chain / Lightning tabs in Off-Grid Bitcoin panel
- Archy Peers vs Mesh Broadcast relay mode selector
- Mesh view fills viewport (no page scroll), internal panel scrolling
- Version bump to 1.2.0-alpha

Also includes: deploy hardening, container fixes, IndeedHub updates,
boot screen, dashboard improvements, MASTER_PLAN task tracking

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 23:56:37 +00:00

21 lines
838 B
Markdown

---
name: Mesh .198 fix — COMPLETED
description: Fixed mesh radio on .198 — duplicate init, no reconnect on write fail, wrong device path. All deployed.
type: project
---
## Status: COMPLETED (2026-03-17)
Three bugs were found and fixed:
1. **Duplicate mesh init in `server.rs`** — removed duplicate block
2. **Serial write failures don't trigger reconnection** — added `consecutive_write_failures` counter, bail after 3
3. **Device path on .198** — set `/var/lib/archipelago/mesh-config.json` to `/dev/ttyUSB1`
All changes deployed to both .228 and .198.
### Files Changed
- `core/archipelago/src/server.rs` — removed duplicate mesh/transport init block
- `core/archipelago/src/mesh/listener.rs` — added write failure tracking + reconnection
- `neode-ui/src/stores/mesh.ts` — fixed TS union type for `typed_payload`