0.3.0-0-pre.4

This commit is contained in:
2026-09-20 13:14:40 +02:00
parent c7ccf57723
commit c4b68b8a60
27 changed files with 1195 additions and 48 deletions

60
deltas/0.3.0/0-pre.4.md Normal file
View File

@@ -0,0 +1,60 @@
<!-- file: deltas/0.3.0/0-pre.4.md -->
<!-- version: 1 -->
# Delta 0.3.0-0-pre.4
## Objectif
Introduire le premier host navigateur direct Snake sans élargir encore le scope vers le lifecycle complet, les assets runtime, le logging ou la provenance de `0-pre.5`.
## Livré
- création de `Web/game-snake-poc/`, package Vite/TypeScript autonome hors workspace Cargo ;
- reprise du template frontend des applications Desk KSP pour la structure `frontend/main.html`, `frontend/sass/`, `frontend/ts/` et le thème Bootstrap/Bootswatch Pulse ;
- reprise uniquement des dépendances npm KSP utiles au navigateur direct : Bootstrap 5, Font Awesome, `sass-embedded`, TypeScript, Vite et types associés ;
- exclusion volontaire des dépendances Tauri, SimpleBar et tracing spécifiques aux apps Desk ;
- consommation des bindings `game-snake-poc-wasm` générés sous `../builds/sasedev-games/game-snake-poc-web/wasm/` ;
- Canvas responsive prenant en compte `devicePixelRatio` ;
- rendu de l'`EngineScene` normalisée sans dupliquer le gameplay ;
- entrées clavier flèches, `WASD`, `ZQSD` et quatre boutons pointer/tactiles ;
- état de chargement, score, longueur et retour d'erreur dans le shell ;
- cache Vite et distribution frontend maintenus hors dépôt ;
- audit de distribution étendu au host Web direct ;
- enregistrement sous `history/0.3.0/0-pre.3.md` des validations utilisateur de `0-pre.3`.
## Hors périmètre
- lifecycle complet navigateur ;
- assets runtime du POC ;
- logging structuré Web ;
- `RuntimeProvenance` ;
- Tauri Snake ;
- Android ;
- extraction d'une abstraction Web commune non encore justifiée.
## Validation demandée
Depuis la racine :
```bash
cargo fmt --all
cargo fmt --all -- --check
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 check --workspace
cargo clippy -p game-snake-poc-wasm --all-targets --all-features -- -D warnings
cargo test -p game-snake-poc-wasm
cargo build -p game-snake-poc-wasm --target wasm32-unknown-unknown
wasm-bindgen ../builds/sasedev-games/target/wasm32-unknown-unknown/debug/game_snake_poc_wasm.wasm --target web --out-dir ../builds/sasedev-games/game-snake-poc-web/wasm --out-name game_snake_poc_wasm
cd Web/game-snake-poc
npm install
npm run build
npm run dev
```
Smoke navigateur : ouvrir `http://127.0.0.1:1434/main.html`, puis vérifier le chargement WASM, le Canvas, les quatre familles d'entrées prévues et le comportement responsive Desktop/mobile.
## Suite
`0-pre.5` ferme l'intégration plateforme du POC : lifecycle/resize complet, assets, logging, provenance runtime et non-régression Desktop SDL3.