0.3.4-alpha.5
This commit is contained in:
62
history/0.3.4/alpha.4.md
Normal file
62
history/0.3.4/alpha.4.md
Normal file
@@ -0,0 +1,62 @@
|
||||
<!-- file: history/0.3.4/alpha.4.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Historique 0.3.4-alpha.4
|
||||
|
||||
## Statut
|
||||
|
||||
`0.3.4-alpha.4` a été validée par l'utilisateur le 2026-09-21. Les limites, deadlines et cas négatifs du backend WebSocket compilent dans le workspace, passent Clippy strict et tous les tests ciblés sont propres.
|
||||
|
||||
Aucun `alpha.4.fix.N` n'est requis. La revue suivant cette gate a néanmoins identifié qu'aucun smoke runtime distinct du harness de test n'avait encore été exécuté. La suite ouvre donc `0.3.4-alpha.5` pour cette preuve avant la beta.
|
||||
|
||||
## 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), 267 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.4`, y compris `game-realtime-transport-lib` et `game-realtime-websocket-lib`.
|
||||
|
||||
## Tests transport et WebSocket
|
||||
|
||||
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 valide ensuite :
|
||||
|
||||
```text
|
||||
unit tests: 5 passed; 0 failed
|
||||
loopback: 1 passed; 0 failed
|
||||
robustness: 5 passed; 0 failed
|
||||
```
|
||||
|
||||
Les onze tests WebSocket couvrent notamment les defaults et invariants de configuration, les mappings capacité/backpressure, le round-trip binaire et close propre, les tailles hors limite, Text interdit, peer drop abrupt et timeout de handshake silencieux.
|
||||
|
||||
## Graphe de dépendances
|
||||
|
||||
`cargo tree -p game-realtime-websocket-lib --edges normal` confirme toujours 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 ne dépend du backend WebSocket.
|
||||
|
||||
## Limite de la preuve
|
||||
|
||||
Cette gate est suffisante pour valider techniquement `alpha.4`, mais elle reste composée d'audits, compilation, lint et tests Cargo. Même le round-trip localhost est exécuté sous `#[test]`.
|
||||
|
||||
La validation runtime opérateur manque encore. `alpha.5` doit donc fournir un exécutable de smoke séparé qui utilise uniquement l'API publique sur un vrai socket loopback et dont le code de sortie atteste le résultat.
|
||||
Reference in New Issue
Block a user