119 lines
3.4 KiB
Markdown
119 lines
3.4 KiB
Markdown
<!-- file: history/0.3.3/2-beta.1.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Historique 0.3.3-2-beta.1
|
|
|
|
## Statut
|
|
|
|
`0.3.3-2-beta.1` a été validée par l'utilisateur le 2026-09-21. La gate large confirme la reproductibilité du pipeline Android SDL3 natif quatre ABI, les artefacts APK/AAB et les smokes de référence x86_64 + ARM64 pour Snake et Reflex.
|
|
|
|
Aucun `2-beta.1.fix.N` n'est requis. La version peut entrer directement en `0.3.3-3-rc.1`.
|
|
|
|
## Gate workspace
|
|
|
|
Les validations suivantes sont propres :
|
|
|
|
```text
|
|
General Rust rule audit: clean
|
|
Rust export completeness audit: 0 candidate(s)
|
|
games.sasedev workspace audit: clean
|
|
Markdown table audit: clean (5 table(s), 251 file(s))
|
|
Distribution layout audit: clean (49 required path(s), 8 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 --workspace --all-targets --all-features: 35 passed, 0 failed
|
|
```
|
|
|
|
## Rebuild Android quatre ABI
|
|
|
|
Après nettoyage Gradle des deux applications, les builds suivants terminent avec succès :
|
|
|
|
```text
|
|
:game-snake-poc:assembleDebug
|
|
:game-reflex-poc:assembleDebug
|
|
:game-snake-poc:bundleRelease
|
|
:game-reflex-poc:bundleRelease
|
|
```
|
|
|
|
Pour Snake et Reflex, les tâches natives ont reconstruit les quatre cibles :
|
|
|
|
```text
|
|
arm64-v8a -> aarch64-linux-android
|
|
armeabi-v7a -> armv7-linux-androideabi
|
|
x86 -> i686-linux-android
|
|
x86_64 -> x86_64-linux-android
|
|
```
|
|
|
|
## Inspection APK et AAB
|
|
|
|
Chaque APK Debug contient :
|
|
|
|
```text
|
|
lib/<abi>/libSDL3.so
|
|
lib/<abi>/libgame_android_entrypoint.so
|
|
```
|
|
|
|
pour les quatre ABI. Chaque AAB Release contient les mêmes couples sous `base/lib/<abi>/`.
|
|
|
|
`zipalign -c -P 16 -v 4` retourne `Verification successful` pour les APK Debug Snake et Reflex.
|
|
|
|
## Smokes x86_64/API 36
|
|
|
|
L'AVD de référence rapporte :
|
|
|
|
```text
|
|
API 36
|
|
x86_64
|
|
PAGE_SIZE 4096
|
|
```
|
|
|
|
Snake :
|
|
|
|
```text
|
|
install: Success
|
|
Status: ok
|
|
LaunchState: COLD
|
|
pidof: 5192
|
|
crash buffer: aucune entrée remontée
|
|
```
|
|
|
|
Reflex :
|
|
|
|
```text
|
|
install: Success
|
|
Status: ok
|
|
LaunchState: COLD
|
|
pidof: 5272
|
|
crash buffer: aucune entrée remontée
|
|
```
|
|
|
|
## Smokes ARM64 réels
|
|
|
|
Le Samsung `SM_G965F` rapporte :
|
|
|
|
```text
|
|
API 29
|
|
ro.product.cpu.abi=arm64-v8a
|
|
ro.product.cpu.abilist=arm64-v8a,armeabi-v7a,armeabi
|
|
```
|
|
|
|
Snake : installation `Success`, `Status: ok`, lancement COLD et processus vivant (`pidof 30958`).
|
|
|
|
Reflex : installation `Success`, `Status: ok`, lancement COLD et processus vivant (`pidof 31798`).
|
|
|
|
Aucune entrée du buffer crash n'a été remontée pendant ces quatre smokes. Les sorties ADB établissent le démarrage et l'absence de crash immédiat ; la matrice RC conserve explicitement la vérification visuelle du rendu et des contrôles comme dernière observation humaine de publication.
|
|
|
|
## Frontières déjà acquises en 0-pre.5
|
|
|
|
Aucune logique Android/native n'ayant changé depuis les preuves de frontière, la beta réutilise sans les rejouer systématiquement :
|
|
|
|
- Android 5.0/API 21 x86 : APK Snake installé et activité démarrée ;
|
|
- Android 15/API 35 x86_64 `ps16k` : `getconf PAGE_SIZE=16384`, APK installé, activité démarrée et processus vivant ;
|
|
- ELF `arm64-v8a` et `x86_64` alignés `2**14` pour SDL3 et la bibliothèque Rust.
|
|
|
|
## Conclusion
|
|
|
|
Le scope d'implémentation reste fermé. `3-rc.1` peut être une candidate strictement gelée, centrée sur la reproductibilité finale, la documentation de publication et la préparation de la session suivante.
|