Files
games/history/0.3.4/alpha.3.fix.1.md
2026-09-21 18:00:32 +02:00

61 lines
2.3 KiB
Markdown

<!-- file: history/0.3.4/alpha.3.fix.1.md -->
<!-- version: 1 -->
# Historique 0.3.4-alpha.3.fix.1
## Statut
`0.3.4-alpha.3.fix.1` a été validée par l'utilisateur le 2026-09-21. Le correctif de manifeste ferme le défaut de `alpha.3` et valide effectivement le backend WebSocket prévu par cette tranche.
Aucun nouveau fix de `alpha.3` n'est requis. La suite peut ouvrir `0.3.4-alpha.4` pour les limites, timeouts et cas négatifs planifiés.
## Gates statiques et Rust
La gate fournie est propre :
```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), 265 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
```
Le workspace compilé porte `0.3.4-alpha.3.fix.1`, y compris `game-realtime-transport-lib` et `game-realtime-websocket-lib`.
## Tests
Le contrat transport-neutral reste propre :
```text
cargo test -p game-realtime-transport-lib --all-targets --all-features
7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
```
Le backend WebSocket compile et son test d'intégration localhost passe :
```text
cargo test -p game-realtime-websocket-lib --all-targets --all-features
unit tests: 0 passed; 0 failed
loopback: 1 passed; 0 failed
```
Le loopback couvre le round-trip binaire dans les deux sens et la fermeture propre distante.
## Graphe de dépendances
`cargo tree -p game-realtime-websocket-lib --edges normal` confirme la frontière attendue :
- `game-realtime-websocket-lib` dépend directement de `game-realtime-transport-lib`, `futures-util 0.3.34`, `tokio 1.53.1`, `tokio-tungstenite 0.30.0` et `tracing 0.1.44` ;
- `tokio-tungstenite 0.30.0` apporte `tungstenite 0.30.0` ;
- aucune pile TLS `native-tls`/`rustls` n'apparaît dans le graphe normal ;
- aucune crate gameplay ou moteur n'est introduite comme dépendance du backend.
## Conséquence
La baseline WebSocket de `alpha.3` est désormais réellement validée après son fix de manifeste. `alpha.4` peut ajouter la robustesse produit sans rouvrir l'API transport-neutral ni introduire de protocole session/gameplay.