CLAUDE.md: device-testing lessons for future sessions; ignore web/.wrangler
server-release / release (push) Failing after 41s

The wireless-adb findings, report-collection workflow, build-number
convention, per-device Shizuku matrix, and the JDK constraint now live in
the repo so a session on any machine starts with them.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
mrambossek
2026-07-30 15:43:32 +02:00
co-authored by Claude Opus 5
parent 0c988df7e8
commit 9d4b41da7f
2 changed files with 20 additions and 0 deletions
+3
View File
@@ -37,3 +37,6 @@ keystore.properties
# Claude Code: settings.json is shared, per-machine overrides are not # Claude Code: settings.json is shared, per-machine overrides are not
.claude/settings.local.json .claude/settings.local.json
# wrangler build/dev artifacts
web/.wrangler/
+17
View File
@@ -59,6 +59,23 @@ From `echolot-prober/`: `./gradlew :app:assembleDebug` (needs local Android SDK;
`echolot-prober/local.properties`). The Gradle build is rooted there, not at the repo root. `echolot-prober/local.properties`). The Gradle build is rooted there, not at the repo root.
First build downloads AGP/Compose/Shizuku from Google Maven + Maven Central. First build downloads AGP/Compose/Shizuku from Google Maven + Maven Central.
## Working with test devices (hard-won lessons)
- **Prefer USB for adb.** Wireless debugging dies constantly: probe runs churn the wifi the
debug link rides on, the Lenovo tablet's ZUI power management kills the listener anyway, and
the port rotates on every restart. Deploys over wireless work between runs; never drive a
probe run over adb.
- Collection loop that works: install over adb → the **user** runs the probes and exports the
JSON manually → archive it under `echolot-prober/reports/` and record findings in
`docs/build-status.md`.
- Bump `versionCode` on every deployed prober change — it shows on screen and as `proberBuild`
in the report; that's how a report is matched to a build.
- Known devices: OnePlus 15 (CPH2747, A16) — Shizuku UserService works;
Lenovo TB330FU (A15, multi-user) — UserService never binds, the `newProcess` fallback carries
it. Full history in build-status.md.
- Gradle needs JDK 1721 (`JAVA_HOME`); a system JDK 25 breaks AGP 8.7. On machines with
Android Studio, its `jbr` directory works.
## Likely next steps ## Likely next steps
1. Run on physical devices; collect JSON reports across Android versions/vendors. 1. Run on physical devices; collect JSON reports across Android versions/vendors.