ci-requirements: the Android lane has an image again

`ci-tauri-android` was repurposed into `ci-rust-android:1.97` rather than
deleted (CI-runner dc802f2, PR #12) — tauri-cli out, cargo-ndk in, ktlint and
detekt added so the Kotlin analyzer lane needs no second image, and JDK 25 now
that we hand-write the Gradle project instead of letting Tauri generate one.

Two things recorded here because they are constraints ON THIS REPO, not on the
image: our Gradle wrapper has to be 9.1+ for that JDK, and the Rust pin is in
lockstep with ci-tauri and ci-tauri-win because all three build
thoughtsync-core from one workspace Cargo.lock under --locked.

M12 step 3 (Scribe #2732). No workflow consumes the image yet; the lane arrives
with the app skeleton.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-18 10:15:48 -04:00
co-authored by Claude Opus 5
parent e696b23417
commit 9f981ca47e
+18 -5
View File
@@ -159,14 +159,27 @@ backend/frontend push.
- No Postgres lane (unchanged): the desktop app's local store + sync behavior is - No Postgres lane (unchanged): the desktop app's local store + sync behavior is
verified on the operator's machine, not in CI. verified on the operator's machine, not in CI.
## Android lane — REMOVED 2026-08-17 ## Android lane — being rebuilt (M12)
The Tauri-mobile Android lane is gone. Android is a native Kotlin/Compose client The Tauri-mobile Android lane is gone. Android is a native Kotlin/Compose client
over the shared `thoughtsync-core` crate instead — see Scribe note 2730 for the over the shared `thoughtsync-core` crate instead — see Scribe note 2730 for the
decision and milestone M12 for the arc. Its CI lane and image will be rebuilt on decision and milestone M12 for the arc.
that basis; `ci-tauri-android` is being repurposed (drop `tauri-cli`, add
`cargo-ndk`) rather than deleted, because its NDK binutils symlinks and PATH fix The image it will run on already exists: **`ci-rust-android:1.97`**, repurposed
are load-bearing for any Rust-on-Android cross-compile. from `ci-tauri-android` rather than deleted (CI-runner `dc802f2`, Scribe #2732).
`tauri-cli` is out and `cargo-ndk` is in; the NDK binutils symlinks and the PATH
append stayed, because they were never Tauri problems — NDK r23 removed the
triple-prefixed binutils that autotools, and so vendored OpenSSL, invokes by bare
name. It also carries `ktlint` + `detekt` so the Kotlin analyzer lane needs no
second image, and JDK 25 (which requires **Gradle 9.1+** in this repo's wrapper —
the old JDK 17 pin existed only because Tauri generated a Gradle 8.x project).
The Rust pin is in LOCKSTEP with `ci-tauri` and `ci-tauri-win`. All three build
`thoughtsync-core` from one workspace `Cargo.lock` under `--locked`, so a
mismatched Rust minor across the lanes would mean divergent resolution for no
reason. Bump the three together or not at all.
No workflow consumes it yet; the lane arrives with the app skeleton (M12 step 5).
## Formatting the Rust lane before pushing ## Formatting the Rust lane before pushing