# Delta 0.3.1-0-pre.1 ## Base Base autoritaire : archive téléchargée depuis le tag `v0.3.0` et fournie pour la reprise. L'archive a été testée et inspectée avant modification. Sa version workspace est `0.3.0`. Elle ne contient pas `.git`, conformément au contrat des archives taggées ; aucun état Git inaccessible n'est inventé. ## Objet Ouvrir `0.3.1` par son gate obligatoire de cadrage : audit de baseline, revue complète des règles, inventaire de réutilisation Web/WASM, référence Tauri existante, exigences Tauri Android, sizing et planification. Aucun scaffold `game-snake-poc-tauri`, aucun frontend Tauri Snake et aucun changement de gameplay n'est introduit dans cette tranche. ## Version La version workspace passe de : ```text 0.3.0 ``` à : ```text 0.3.1-0-pre.1 ``` Les versions npm des produits existants ne changent pas : cette tranche n'est pas une release de leurs frontends et `VER-TAURI-003`/`VER-TAURI-004` interdisent une synchronisation npm cérémonielle à chaque prerelease Cargo. ## Audit de baseline Avant modification : ```text unzip -t : no errors General Rust rule audit: clean Rust export completeness audit: 0 candidate(s) games.sasedev workspace audit: clean Markdown table audit: clean (5 table(s), 197 file(s)) Distribution layout audit: clean (31 required path(s), 1 forbidden path(s) absent) ``` L'archive ne contient aucun lockfile interdit, `node_modules/`, `dist/`, `target/` ou binding WASM généré. Le détail est conservé dans `docs/studies/024-V0_3_1_TAURI_ANDROID_SNAKE_AUDIT.md`. ## Corrections documentaires et normatives Cette tranche : - ferme l'index du plan `0.3.0` et ouvre le plan actif `0.3.1` ; - ajoute l'étude de cadrage et le plan vivant `0.3.1` ; - distingue explicitement les commandes Tauri Desktop des commandes Tauri Android ; - ajoute `cargo tauri android init`, `cargo tauri android dev` et `cargo tauri android build` à la matrice normative ; - corrige le prompt de reprise pour utiliser les commandes Android de Tauri au lieu des commandes Desktop ; - clarifie la différence entre la famille conceptuelle Mobile et le contrat V1 concret `PlatformFamily::Android` ; - distingue une sortie applicative Tauri soumise à `EngineGame::quit_requested` du Back système Android, qui reste une navigation système ; - documente la provenance attendue `Android / Wasm / TauriWebView`. ## Réutilisation retenue Le second host doit : - conserver `game-snake-poc` comme gameplay unique ; - réutiliser `game-snake-poc-wasm` plutôt que créer un second adapter ; - généraliser seulement la provenance de host actuellement figée sur Web/Browser ; - réutiliser sélectivement Canvas/input/assets/shell du host Web ; - adapter lifecycle et tracing au WebView Tauri Android ; - suivre l'organisation Tauri `lib.rs` façade + `tauri.rs` assemblage + modules propriétaires ; - ne pas reprendre l'orchestrateur Python historique du POC Reflex. ## Référence KSP L'archive KSP demandée est visible dans la bibliothèque, mais son export binaire vers l'environnement de génération a été refusé par le service de bibliothèque. Aucun audit intégral fictif de cette archive n'est donc déclaré. Les extraits indexés accessibles confirment néanmoins une organisation Desk avec `tauri.rs` pour l'assemblage/lifecycle et des modules propriétaires séparés tels que `app_state.rs`, `route_runtime.rs` et `frontend_logging.rs`. Les règles locales games.sasedev restent normatives. ## Forecast ```text 0-pre.1 audit / règles / requirements / environnement / plan 0-pre.2 scaffold Tauri Android + pipeline natif + bridge Snake WASM minimal 0-pre.3 Canvas / input / assets / shell 0-pre.4 lifecycle / provenance / tracing / Back + smoke mobile 0-pre.5 conditionnel : extraction commune réellement justifiée 2-beta.1 validation large + packaging Android 2-beta.2 consolidation documentaire conditionnelle 3-rc.1 candidate gelée 0.3.1 release mécanique ``` ## Validations exécutées dans l'environnement de génération Après constitution de l'état livré, exécuter : ```bash python3 scripts/audit_rust_workspace_rules.py python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates Android Web deltas history python3 scripts/audit_distribution_layout.py ``` Aucun Cargo build/test/smoke final n'est attribué au générateur. ## Validation utilisateur demandée Le manifest workspace change de version et les règles de commandes/validation sont modifiées. La gate utilisateur est : ```bash python3 scripts/audit_rust_workspace_rules.py python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates Android Web deltas history python3 scripts/audit_distribution_layout.py cargo fmt --all cargo fmt --all -- --check cargo check --workspace cargo clippy --workspace --all-targets --all-features -- -D warnings ``` Aucun test workspace complet n'est imposé par `pre.1` : aucun code, comportement ni graphe de dépendances n'est modifié. Il reste réservé à un jalon planifié ou à une portée transverse non bornable. Fournir également l'inventaire d'environnement qui conditionne `0-pre.2` : ```bash rustc --version cargo --version cargo tauri --version rustup target list --installed node --version npm --version wasm-bindgen --version java -version printf 'JAVA_HOME=%s\nANDROID_HOME=%s\nNDK_HOME=%s\n' "$JAVA_HOME" "$ANDROID_HOME" "$NDK_HOME" adb version adb devices -l emulator -list-avds ``` Cette seconde série est un inventaire de prérequis, pas une gate déclarée réussie à l'avance. ## Suite après validation Si la gate est propre et le cadrage accepté, passer à `0.3.1-0-pre.2` pour créer le host Tauri Android minimal. Toute absence d'outil indispensable ou incohérence de règle découverte par la gate produit d'abord un `0-pre.1.fix.N` borné.