This roadmap captures the current App + Mini direction after the shared service and installer work.
- App and Mini share ADB location, environment setup, device monitoring, settings, scrcpy launch, update checks, and update installation through
AndroidTreeView.Shared. - App and Mini both import
build/AndroidTreeView.Scrcpy.targets, so scrcpy assets are distributed by one build target. - The full App owns rich device management UI, details, card actions, and the mirror window.
- Mini owns the tiny always-on companion UI and automatically starts mirroring after a device is online and authorized.
- Update checks are product-aware:
- App uses
android-tree-view-app. - Mini uses
android-tree-view-mini.
- App uses
- Updates are ZIP-driven. The updater downloads, verifies SHA-256 metadata when present, extracts Windows x64 release ZIPs, and starts the automated apply flow. Unsupported loose-file ZIPs are rejected.
- Packaging is product-aware and can produce first-class App and Mini ZIPs for Windows x64 and macOS Apple Silicon.
- The full App includes a semi-automatic Root wizard with safe package extraction, original-image backup, pinned official Magisk components, ADB-to-fastboot identity continuity, two confirmation gates, and single-slot/A-B partial-write reporting. Mini remains Root-tool-free.
- Design:
superpowers/specs/2026-07-09-semi-auto-root-design.md - Implementation plan:
superpowers/plans/2026-07-10-semi-auto-root-implementation.md - Complete M0 on expendable devices for both
bootand Android 13+init_bootpatching. - Complete M1 on recoverable single-slot and A/B devices, including second-slot failure recovery.
- Validate recovery-only blocking against representative standard v0-v4 images and document any OEM-wrapped boot image formats; unrecognized formats remain blocked rather than guessed.
- Smoke-test pinned payload-dumper and packaged executable permissions on Windows x64 and macOS arm64.
- Remove the default flash gate only after those records are accepted; until then the environment override is restricted to recoverable M1 test devices.
- Keep right-click/card actions universal, non-destructive by default, and no-root-required unless a root-only action is explicitly marked.
- Continue improving state-aware enable/disable logic for reboot, recovery, bootloader, Magisk install, APK install, FRP/setup-complete helper, captive portal helper, and NTP helper.
- Add clear confirmations for disruptive actions such as reboot, shutdown, recovery, and bootloader mode.
- Add multi-select on the device grid.
- Add a batch action bar for safe actions across selected devices.
- Run per-device actions concurrently and report per-device failures without aborting the whole batch.
- Merge
fastboot devicesinto the device list with a distinct bootloader state. - Parse
fastboot getvar allinto a fastboot info model. - Add fastboot-safe actions such as reboot system and reboot bootloader.
- Add more network fields such as Wi-Fi SSID, gateway, DNS, link speed, and interface details where available.
- Surface additional system fields such as bootloader, verified boot, patch level, uptime, timezone, locale, build tags, and build type.
- Build and smoke-test the release artifacts before publishing:
AndroidTreeView-<version>-win-x64.zipAndroidTreeView-<version>-osx-arm64.zipAndroidTreeView-Mini-<version>-win-x64.zipAndroidTreeView-Mini-<version>-osx-arm64.zip
- Verify update metadata points each product key at the correct ZIP artifact.
- Test App and Mini update flows on a clean Windows machine or VM.
Close running App or Mini instances before rebuilding their projects, because Windows can lock the generated .exe while it is running.