Files
games/history/0.3.4/beta.1.md
2026-09-21 19:53:50 +02:00

3.1 KiB

Historique 0.3.4-beta.1

Statut

0.3.4-beta.1 a été validée par l'utilisateur le 2026-09-21. La gate large est entièrement propre : audits statiques, formatage, check, Clippy strict, test workspace complet, smoke runtime WebSocket et graphes de dépendances.

Aucun beta.1.fix.N n'est requis. Le comportement peut être gelé en 0.3.4-rc.1 sans créer de beta supplémentaire artificielle.

Gates statiques et compilation

La sortie utilisateur confirme :

General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
games.sasedev workspace audit: clean
Markdown table audit: clean (5 table(s), 271 file(s))
Distribution layout audit: clean (50 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 compile intégralement sous 0.3.4-beta.1, y compris les deux crates realtime et game-realtime-websocket-smoke.

Test workspace complet

La commande :

cargo test --workspace --all-targets --all-features

est propre avec 53 tests réussis, 0 échec sur l'ensemble des suites exécutées.

La gate couvre notamment :

  • engine-v1-common : 8 tests ;
  • engine-v1-platform-api : 3 tests ;
  • engine-v1-sdl : 5 tests ;
  • game-android-entrypoint : 2 tests ;
  • game-assets-lib : 2 tests ;
  • game-logging-lib : 1 test d'intégration ;
  • game-realtime-transport-lib : 7 tests ;
  • game-realtime-websocket-lib : 5 tests unitaires, 1 loopback et 5 tests de robustesse ;
  • game-reflex-poc : 4 tests ;
  • game-snake-poc : 5 tests ;
  • game-snake-poc-wasm : 5 tests.

Les autres targets bin/lib de runners et hosts concernés s'exécutent également sans échec avec zéro test lorsqu'ils ne possèdent pas de suite propre.

Smoke runtime

La commande :

cargo run -p game-realtime-websocket-smoke

passe hors harness #[test] et affiche :

game-realtime-websocket-smoke: PASS

Le log de validation montre un bind éphémère 127.0.0.1:39077, une connexion cliente réelle, l'accept serveur et la fermeture propre. Ce numéro de port décrit uniquement cette exécution ; le smoke continue d'utiliser 127.0.0.1:0.

Graphe de dépendances

cargo tree -p game-realtime-websocket-lib --edges normal confirme le backend attendu :

  • futures-util 0.3.34 ;
  • game-realtime-transport-lib ;
  • Tokio 1.53.1 ;
  • tokio-tungstenite 0.30.0 / Tungstenite 0.30.0 ;
  • tracing.

Aucune pile TLS n'apparaît dans le graphe normal fourni.

L'arbre inverse :

cargo tree -i game-realtime-websocket-lib --workspace --edges normal

ne contient qu'un consommateur workspace :

game-realtime-websocket-smoke

Aucune crate sous crates/games/ ou crates/engines/ ne dépend donc du backend WebSocket.

Conclusion beta

La beta valide la baseline fonctionnelle et ses frontières sans régression transverse. La RC peut se limiter au gel de publication, à la documentation durable, au changelog, à l'historique et à la préparation du prompt 0.3.5.