diff --git a/docs/PRODUCTION-MASTER-PLAN.md b/docs/PRODUCTION-MASTER-PLAN.md index 94a71a79..08021b2f 100644 --- a/docs/PRODUCTION-MASTER-PLAN.md +++ b/docs/PRODUCTION-MASTER-PLAN.md @@ -147,6 +147,16 @@ Beta Live (public). Hardening priorities feeding the gate: - **P1** LUKS2 full-partition encryption for `/var/lib/archipelago/` (AES-256-XTS, Argon2id, key from setup password + hardware salt). - **P1** Meshtastic plug-and-play parity with MeshCore. +- **P1** Mobile app-launch UX — drop the "this app opens in a tab" interstitial. + Two surfaces (both: no interstitial screen, launch the app directly): + - **Companion app (Android):** open **every** app in the **in-app WebView** + (not just non-iframeable ones) — *and* carry the current mobile-iframe footer + controls into the WebView (back/forward/reload/close — good, useful UX). + - **Mobile web browser (PWA):** open tab-apps directly in a **new browser tab**. + Touch points: `neode-ui/src/stores/appLauncher.ts`, `AppLauncherOverlay.vue`, + the Android in-app WebView bridge, and the mesh-mobile iframe footer controls. + (Reference prior work: `b5a9deb8` in-app webview for non-iframeable apps, + `d1fbcd9b` "open in browser" via native bridge.) **Post-beta (deferred — do not start until gate is green):** P2P encrypted voice/video (WebRTC over federation via Tor); watch-only wallet + mesh BTC