2.5 KiB
Historique 0.3.1-0-pre.4.fix.1
Statut
Correctif validé par l'utilisateur le 2026-09-21. Le POC Tauri Android est jouable sur l'AVD x86_64 et sur un Galaxy S9+ ARM64 réel ; HTTP et HMR utilisent désormais le même tunnel USB 1436 sur appareil physique.
Aucune extraction 0-pre.5 n'est justifiée. La version peut entrer en 2-beta.1 pour la validation large et le packaging APK autonome.
Gate workspace
Les validations suivantes passent :
General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
games.sasedev workspace audit: clean
Markdown table audit: clean (5 table(s), 222 file(s))
Distribution layout audit: clean (48 required path(s), 1 forbidden path(s) absent)
cargo fmt --all: clean
cargo fmt --all -- --check: clean
cargo check --workspace: clean
cargo clippy --workspace --all-targets --all-features -- -D warnings: clean
cargo test -p game-snake-poc-wasm --all-targets --all-features: 5 passed, 0 failed
Smoke ARM64 réel
Le téléphone expose arm64-v8a; Tauri sélectionne aarch64-linux-android, compile libgame_snake_poc_tauri_lib.so, assemble puis installe l'application avec succès.
La gate utilise :
adb reverse tcp:1436 tcp:1436
cargo tauri android dev --host 127.0.0.1
Les traces confirment :
Snake Tauri frontend bootstrap started
Snake Tauri assets ready: game-snake-poc / snake / engine-v1
Snake Tauri WASM initialized
Snake Tauri provenance: android / tauri-webview / wasm / phone / unknown
Snake Tauri runtime resumed
Snake Tauri frontend ready
Snake Tauri provenance: android / tauri-webview / wasm / phone / touch
L'erreur Vite failed to connect to websocket observée avant le fix ne réapparaît pas.
Back et teardown
Le premier smoke ARM64 de 0-pre.4 avait observé un abort FORTIFY: pthread_mutex_lock called on a destroyed mutex pendant le teardown. Le smoke fix.1 ne le reproduit pas : après Back, les traces passent par runtime paused, visibility hidden, destruction de la surface EGL, stopped(true) puis dispatchDetachedFromWindow, sans crash observé avant l'arrêt volontaire de la commande.
Le défaut est donc traité comme un risque potentiellement intermittent plutôt que comme une régression reproductible du host. 2-beta.1 doit encore le retester sur un APK autonome, sans Vite ni tunnel ADB.
Suite
0.3.1-2-beta.1 exécute la suite Cargo workspace complète, package un APK Debug autonome contenant x86_64 et ARM64, puis le fume sur AVD et appareil réel.