From c6da73513418051dbe5f3d83a4c0e678b275802d Mon Sep 17 00:00:00 2001 From: iris <2+iris@noreply.localhost> Date: Tue, 8 Sep 2026 11:17:15 -0400 Subject: [PATCH] docs/RUST.md: the ABI-cache half of the build-apk.sh box is done (4f6ec3a) Co-Authored-By: Claude Opus 5 --- docs/RUST.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/docs/RUST.md b/docs/RUST.md index e8e8afb..c22b6d2 100644 --- a/docs/RUST.md +++ b/docs/RUST.md @@ -725,9 +725,19 @@ closes it. `log_upload`, `POST /client-log` and the `AI_APP_LOG_*` baking went out whole rather than being rewired first -- done the same day, "Phone logging" above. `build.rs` had nothing left to do and is gone with them. -- [ ] `iris/android-app/build-apk.sh`: clear Gradle's merged-native-libs - cache when the ABI changes (the x86_64 trap), and make the debug bench - APK installable (648 MB) -- RUST.md's logging section names both. +- [~] `iris/android-app/build-apk.sh`. **First half done 2026-09-08** + (4f6ec3a): the script now removes `merged_native_libs`, + `stripped_native_libs` and `merged_jni_libs` alongside + `app/src/main/jniLibs`, since `mergeReleaseNativeLibs` is up to date + against its cached inputs and `rm -rf jniLibs` does not reach them. + Scoped to those three rather than all of `app/build`, so an ABI change + costs the native merge and not the whole Gradle build. Verified on the + case that produced it -- an x86_64 lib left in the checkout from + emulator work, then `./build-apk.sh release --abi arm64-v8a`, whose + APK's only `.so` is `lib/arm64-v8a/libmain.so`. **Still open**: the + debug bench APK is 648 MB and will not install + (`INSTALL_PARSE_FAILED_NOT_APK`), because the debug `libmain.so` is + 325 MB; use `release` on the emulator until that is fixed. - [ ] Input-event and timing instrumentation into the log ring, copied by the report button. After the logging route lands (same ring). - [x] **Catch-a-fling (done 2026-09-07, b87f5a5; verified and ticked