From 8f42306db745486bfa60744f776bc45aed9aab15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hern=C3=A2ni=20Marques?= Date: Fri, 17 Jul 2026 22:04:39 +0200 Subject: [PATCH] docs(android-test): dual-stack GOA/stage run results (ANR fail) Record time-bounded F-Droid smoke on both stacks: landings/URIs OK, unattended withdraw+pay blocked by System UI ANR on low-RAM emulator. --- .../taler-monitoring/android-test/.gitignore | 1 + .../android-test/GUI-AUTOMATION-NOTES.md | 46 +++++++++++++++++++ 2 files changed, 47 insertions(+) diff --git a/scripts/taler-monitoring/android-test/.gitignore b/scripts/taler-monitoring/android-test/.gitignore index 6d4e62e..fc1fb44 100644 --- a/scripts/taler-monitoring/android-test/.gitignore +++ b/scripts/taler-monitoring/android-test/.gitignore @@ -7,3 +7,4 @@ out-gui/ out-source-gui/ out-gui-chain/ out-matrix-*/ +out-stack-run-*/ diff --git a/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md b/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md index 3248573..b30472b 100644 --- a/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md +++ b/scripts/taler-monitoring/android-test/GUI-AUTOMATION-NOTES.md @@ -264,6 +264,51 @@ Scripts **today** implement Android only; they should honour: | **GOA** | explorer mint / `demo-withdraw.json` @ bank.hacktivism.ch | goa-shop templates / Paivana pay-template | | **stage** | explorer / demo-withdraw @ stage.bank… | fermes / jardin public templates | +### Dual-stack run result (2026-07-17 · headless AVD) + +**What ran:** published F-Droid wallet **1.6.1** (`net.taler.wallet.fdroid`), +`run-android-pay-smoke.sh` with **Abheben + Bezahlen**, `SMOKE_STRICT=1`, +per-stack wall **480 s** (no full matrix / no Gradle — time-bounded). +Device: `emulator-5554` (TalerWallet34, headless, SwiftShader). +Host RAM ~**3.7 GiB** (~150 MiB free during run) — under recommended ≥6–8 GiB. + +| Stack | Bank / pay entry | Exit | Elapsed | Withdraw URI | Pay URI | wallet-core withdraw | wallet-core pay | ANR | Overall | +|-------|------------------|------|---------|--------------|---------|----------------------|-----------------|-----|---------| +| **goa** | bank.hacktivism.ch · paivana pay-template | **10** | ~106 s | delivered | delivered | **NO** | **NO** | **YES** (System UI) | **FAIL** | +| **stage** (*lefrancpaysan*) | stage.bank… · fermes `panier-legumes` order | **10** | ~176 s | delivered | delivered | **NO** | **NO** | **YES** (Android System) | **FAIL** | + +Neither stack hit the 480 s timeout; both finished under 3 min with hard fail. + +**What worked (infra / landings):** + +- adb install F-Droid APK +- GOA + stage **demo-withdraw.json** returned usable `taler://withdraw/…` +- GOA **pay-template** paivana URI built +- stage merchant **template POST** → `taler://pay/…/fermes-des-collines/…` +- Intent delivery (`am start VIEW`) for withdraw and pay +- Artifacts under `out-stack-run-20260717-215934/{goa,stage}/` (gitignored) + +**What failed (app/GUI on this host):** + +- **System UI / Android System ANR** → only Close/Wait; no Confirm/Abheben/Pay taps +- **wallet-core** never showed `prepareBankIntegratedWithdrawal` / pay prepare in logcat +- Chooser noise: **Taler Wallet** + **Taler Wallet Debug** both installed (“Open with”) +- Unattended **Abheben + Bezahlen** not green on this emulator/RAM + +**Interpretation:** + +| Layer | GOA | stage | +|-------|-----|-------| +| HTTP / bank / merchant reachability for smoke inputs | OK | OK | +| Deep-link plumbing | OK | OK | +| Unattended GUI Confirm → settled | **blocked (ANR)** | **blocked (ANR)** | +| Strict smoke (`SMOKE_STRICT=1`) | fail rc=10 | fail rc=10 | + +**Not a stack-specific regression** between GOA and stage in this run — same failure mode (host/emulator). +Settlement proof remains **host CLI e2e/ladder**, not this Android GUI path, until a device with enough RAM is used. + +**Retry when:** physical phone or host with more free RAM; ideally uninstall one of fdroid / fdroid.debug to avoid “Open with”; optional `WINDOWED=0` stays default (headless). + --- ## Upstream branches (`taler-android` `dev/hernani-inference/*`) @@ -282,6 +327,7 @@ Scripts **today** implement Android only; they should honour: - [x] Minimal variant documented - [x] Minimalvariante: was geht / was nicht (Beschränkungen) - [x] Two stacks (goa / stage) +- [x] Dual-stack run documented (2026-07-17: both FAIL ANR, landings OK) - [x] Flags design (`AUTO_ANDROID` / `AUTO_GUI` / platform defaults) - [x] **Headless emulator default** (`EMULATOR_HEADLESS=1`, SwiftShader) - [x] Linux default = Android suite only