2.3 KiB
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 :
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 :
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 :
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-libdépend directement degame-realtime-transport-lib,futures-util 0.3.34,tokio 1.53.1,tokio-tungstenite 0.30.0ettracing 0.1.44;tokio-tungstenite 0.30.0apportetungstenite 0.30.0;- aucune pile TLS
native-tls/rustlsn'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.