What changed
The public Android build was updated in #110 (with the earlier #109). Net effect now live in app-debug.apk:
- targetSdk 28 -> 35 (single variant now; the legacy flavor is gone). The guest still runs under proot. Validated on Seeker (Android 16 + pointer tagging), but we need coverage on other devices/vendors.
- claude launch fix: a rootfs hardlink was being turned into a host-absolute symlink that dangled inside the guest, so
claude failed with spawn ENOENT. It now resolves to the real binary.
- Install marker bumped (v2 -> v3): the first launch after updating re-extracts the rootfs once (~1 GB, a few minutes). This is expected and one-time.
- appId + signing unchanged -> installing over an existing build is an in-place update (no data wipe).
Build
QA checklist (please test on your device)
A. Update over an existing install
B. Fresh install (uninstall first, then install)
On any failure, please report
- Device model + Android version
- Which step failed and what you saw on screen
adb logcat | grep -iE "avc|AgentNet" around the failure
Context: this is the targetSdk 35 cross-vendor check — your device is exactly the coverage we need beyond Seeker.
What changed
The public Android build was updated in #110 (with the earlier #109). Net effect now live in
app-debug.apk:claudefailed withspawn ENOENT. It now resolves to the real binary.Build
QA checklist (please test on your device)
A. Update over an existing install
clauderesponds (this was broken before the update)codexrespondsB. Fresh install (uninstall first, then install)
On any failure, please report
adb logcat | grep -iE "avc|AgentNet"around the failureContext: this is the targetSdk 35 cross-vendor check — your device is exactly the coverage we need beyond Seeker.