91 lines
2.7 KiB
Markdown
91 lines
2.7 KiB
Markdown
<!-- file: deltas/0.1.0/0-pre.5.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta 0.1.0-0-pre.5
|
|
|
|
## Base
|
|
|
|
Base validée : `0.1.0-0-pre.4.fix.2`.
|
|
|
|
## Validation du delta précédent
|
|
|
|
`0.1.0-0-pre.4.fix.2` a été validée par l'utilisateur le 2026-09-16.
|
|
|
|
Résultats :
|
|
|
|
- `cargo fmt --all -- --check` propre ;
|
|
- audit Rust/workspace propre ;
|
|
- audit Markdown propre : `1 table(s), 37 file(s)` ;
|
|
- `cargo check --workspace` propre.
|
|
|
|
## Objectif
|
|
|
|
Introduire la première intégration SDL3 Desktop réelle sans déplacer de logique de gameplay hors des crates `lib` de jeu.
|
|
|
|
## Changements
|
|
|
|
- ajout de SDL3 comme dépendance workspace ;
|
|
- implémentation de `SdlRuntime` dans `engine-v1-sdl` ;
|
|
- création d'une fenêtre SDL3 ;
|
|
- pompe d'événements SDL3 ;
|
|
- fermeture par événement `Quit` ou touche `Escape` ;
|
|
- mapping initial de `Space` vers l'action abstraite `Primary` ;
|
|
- rendu minimal avec effacement de fenêtre ;
|
|
- conservation de la boucle moteur commune `FixedStepRunner` ;
|
|
- migration des runners Reflex et Snake vers le runtime SDL3 ;
|
|
- ajout d'un test unitaire séparé pour la construction de la configuration SDL3 ;
|
|
- archivage immuable de la validation de `0-pre.4.fix.2`.
|
|
|
|
## Limites volontaires
|
|
|
|
- pas encore de sprites ;
|
|
- pas encore d'assets ;
|
|
- pas encore de texte ;
|
|
- pas encore de contrôle souris/tactile ;
|
|
- pas encore de cadence réelle basée sur un timer SDL ;
|
|
- pas encore de backend Android SDL3 ;
|
|
- les deux runners ouvrent seulement une fenêtre fonctionnelle et injectent `Primary` via `Space`.
|
|
|
|
## Validation à exécuter par l'utilisateur
|
|
|
|
Le delta modifie du Rust :
|
|
|
|
```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 deltas history
|
|
cargo check --workspace
|
|
cargo clippy --workspace --all-targets --all-features -- -D warnings
|
|
```
|
|
|
|
Tests ciblés :
|
|
|
|
```bash
|
|
cargo test -p engine-v1-sdl --all-targets --all-features
|
|
cargo test -p game-reflex-poc --all-targets --all-features
|
|
cargo test -p game-snake-poc --all-targets --all-features
|
|
```
|
|
|
|
Smokes Desktop interactifs :
|
|
|
|
```bash
|
|
cargo run -p game-reflex-poc-desktop
|
|
cargo run -p game-snake-poc-desktop
|
|
```
|
|
|
|
Pour chaque runner :
|
|
|
|
- une fenêtre SDL3 doit s'ouvrir ;
|
|
- `Escape` doit fermer proprement la fenêtre ;
|
|
- le bouton de fermeture système doit fermer proprement la fenêtre ;
|
|
- `Space` doit être capturé comme action `Primary` sans panic.
|
|
|
|
La suite workspace complète n'est pas demandée pour ce delta sauf si les résultats ciblés révèlent un doute transversal.
|
|
|
|
## Règle de transition
|
|
|
|
Si toutes ces validations sont propres, passer automatiquement à `0.1.0-0-pre.6`.
|
|
|
|
En cas d'échec, produire `0.1.0-0-pre.5.fix.1`.
|