0.3.4-beta.1
This commit is contained in:
85
history/0.3.4/alpha.5.md
Normal file
85
history/0.3.4/alpha.5.md
Normal file
@@ -0,0 +1,85 @@
|
||||
<!-- file: history/0.3.4/alpha.5.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Historique 0.3.4-alpha.5
|
||||
|
||||
## Statut
|
||||
|
||||
`0.3.4-alpha.5` a été validée par l'utilisateur le 2026-09-21. La gate complète est propre et le smoke runtime WebSocket distinct du harness de test affiche explicitement `game-realtime-websocket-smoke: PASS` avec sortie zéro.
|
||||
|
||||
Aucun `alpha.5.fix.N` n'est requis. Les critères d'entrée en beta sont satisfaits ; la suite ouvre `0.3.4-beta.1` sans nouveau scope fonctionnel.
|
||||
|
||||
## 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), 269 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 compilé porte `0.3.4-alpha.5`, y compris le launcher `game-realtime-websocket-smoke`.
|
||||
|
||||
## 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 :
|
||||
|
||||
```text
|
||||
unit tests: 5 passed; 0 failed
|
||||
loopback: 1 passed; 0 failed
|
||||
robustness: 5 passed; 0 failed
|
||||
```
|
||||
|
||||
Les scénarios couvrent notamment les invariants de configuration, les mappings capacité/backpressure, le round-trip binaire, le close propre, les tailles hors limite, Text interdit, peer drop abrupt et timeout de handshake silencieux.
|
||||
|
||||
## Smoke runtime
|
||||
|
||||
La commande :
|
||||
|
||||
```bash
|
||||
cargo run -p game-realtime-websocket-smoke
|
||||
```
|
||||
|
||||
s'exécute avec succès hors harness `#[test]` sur un port loopback éphémère. Le log fourni montre :
|
||||
|
||||
```text
|
||||
realtime WebSocket smoke started
|
||||
WebSocket listener bound address=127.0.0.1:42419
|
||||
loopback endpoint bound endpoint="ws://127.0.0.1:42419/"
|
||||
WebSocket peer accepted peer=127.0.0.1:42388
|
||||
WebSocket client connected endpoint="ws://127.0.0.1:42419/"
|
||||
game-realtime-websocket-smoke: PASS
|
||||
realtime WebSocket smoke passed
|
||||
```
|
||||
|
||||
Le port est alloué dynamiquement ; les valeurs ci-dessus décrivent uniquement cette exécution de validation.
|
||||
|
||||
## Graphe du smoke
|
||||
|
||||
`cargo tree -p game-realtime-websocket-smoke --edges normal` confirme que le launcher dépend directement de :
|
||||
|
||||
- `game-logging-lib` ;
|
||||
- `game-realtime-transport-lib` ;
|
||||
- `game-realtime-websocket-lib` ;
|
||||
- Tokio ;
|
||||
- tracing.
|
||||
|
||||
Le backend WebSocket reste sur Tokio `1.53.1`, `tokio-tungstenite 0.30.0` et Tungstenite `0.30.0`. Aucune pile TLS n'apparaît dans le graphe normal fourni.
|
||||
|
||||
## Conclusion alpha
|
||||
|
||||
La phase alpha a désormais produit et validé le contrat transport-neutral, le backend WebSocket, la robustesse, les cas négatifs et la preuve runtime publique. La beta peut se limiter à la validation large et à la recherche de régressions, conformément au plan actif.
|
||||
Reference in New Issue
Block a user