diff --git a/SESSION_HANDOFF.md b/SESSION_HANDOFF.md index cf18db8..9e01bcf 100644 --- a/SESSION_HANDOFF.md +++ b/SESSION_HANDOFF.md @@ -127,18 +127,23 @@ Three bugs fixed: ## Open punch list -### 1. Android APK launch verification (Option A) +### 1. Physical-device smoke test — THE ONLY REMAINING v0.40.0 ITEM -Physical device test: install the latest APK on a real Android device (not AVD), -and run the checklist in `docs/ANDROID.md §4`. This has never been gated in CI. -AVD `adb shell input tap` doesn't deliver real touch events, so physical-device -smoke testing is the only gate. +This is the **single outstanding task** for the v0.40.0 Android release. Everything +else is done and verified: workspace gates, `aarch64-linux-android` cross-compile + +clippy, release manifest sanity, a full local signed APK, the published release, and +Obtainium-facing delivery (public releases API, latest non-draft release, APK +downloadable anonymously). The only thing that cannot be done without hardware is +running the app on a real phone. -**Still open after the v0.40.0 release.** The signed release APK is now published -(grab it from the release page, or use the local `target/debug/apk/ferrous-solitaire.apk`). -When testing, specifically exercise the Draw-Three waste fan fixed in #106: switch -to Draw-Three, draw several cards, and confirm dragging the visible top waste card -plays *that* card, not the one beneath it. +Install the published APK on a real Android device (not AVD) and run the checklist +in `docs/ANDROID.md §4`. This has never been gated in CI — AVD `adb shell input tap` +doesn't deliver real touch events, so physical-device smoke testing is the only gate. + +The signed release APK is published (grab it from the release page, or use the local +`target/debug/apk/ferrous-solitaire.apk`). When testing, specifically exercise the +Draw-Three waste fan fixed in #106: switch to Draw-Three, draw several cards, and +confirm dragging the visible top waste card plays *that* card, not the one beneath it. Latest AVD smoke (2026-06-08 local / 2026-06-09 UTC): built `target/debug/apk/ferrous-solitaire.apk` for `x86_64-linux-android`, installed @@ -147,13 +152,13 @@ rendered the board, safe-area insets resolved as `top=136 bottom=63 left=0 right=0` after 2 frames, onboarding could be dismissed via AVD input, and filtered logcat showed no Ferrous panic/fatal/ANR. -### 2. Matomo analytics live validation +### 2. Matomo analytics live validation (independent — NOT a v0.40.0 release blocker) -`Settings` has `analytics_enabled`, `matomo_url`, and `matomo_site_id`; the engine -consumes them via `AnalyticsPlugin` on non-wasm targets. Remaining work is live -validation against the deployed Matomo instance. Use -`docs/analytics-validation.md` for the native validation checklist and the -current web/WASM decision notes. +Separate, ongoing task unrelated to the Android release. `Settings` has +`analytics_enabled`, `matomo_url`, and `matomo_site_id`; the engine consumes them via +`AnalyticsPlugin` on non-wasm targets. Remaining work is live validation against the +deployed Matomo instance. Use `docs/analytics-validation.md` for the native +validation checklist and the current web/WASM decision notes. ---