93 lines
2.8 KiB
Markdown
93 lines
2.8 KiB
Markdown
<!-- file: history/0.3.5/alpha.3.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Historique 0.3.5-alpha.3
|
|
|
|
## Statut
|
|
|
|
`0.3.5-alpha.3` a été validée par l'utilisateur le 2026-09-21. Le stream fiable principal, le framing privé borné et l'implémentation du contrat realtime commun sont donc fermés sans correctif.
|
|
|
|
La suite peut ouvrir `0.3.5-alpha.4` pour la robustesse et le lifecycle sans modifier le scope de `alpha.5`, qui reste le smoke natif hors harness.
|
|
|
|
## Gates statiques et compilation
|
|
|
|
Les commandes utilisateur ont terminé proprement :
|
|
|
|
```text
|
|
cargo fmt --all
|
|
cargo fmt --all -- --check
|
|
python3 scripts/audit_rust_workspace_rules.py
|
|
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates Android Web deltas history
|
|
python3 scripts/audit_distribution_layout.py
|
|
cargo check --workspace
|
|
cargo clippy --workspace --all-targets --all-features -- -D warnings
|
|
```
|
|
|
|
La sortie confirme :
|
|
|
|
```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), 289 file(s))
|
|
Distribution layout audit: clean (50 required path(s), 8 forbidden path(s) absent)
|
|
cargo check --workspace: clean
|
|
cargo clippy --workspace --all-targets --all-features -- -D warnings: clean
|
|
```
|
|
|
|
Le workspace compilé porte `0.3.5-alpha.3`, y compris `game-realtime-webtransport-lib` et l'ensemble des targets workspace affichées par la gate.
|
|
|
|
## Tests du contrat realtime commun
|
|
|
|
La commande :
|
|
|
|
```bash
|
|
cargo test -p game-realtime-transport-lib --all-targets --all-features
|
|
```
|
|
|
|
est entièrement propre :
|
|
|
|
```text
|
|
7 passed; 0 failed
|
|
```
|
|
|
|
Les preuves couvrent notamment split, fermeture distante propre, payload vide/binaire et stabilité des catégories d'erreurs du contrat commun.
|
|
|
|
## Tests WebTransport
|
|
|
|
La commande :
|
|
|
|
```bash
|
|
cargo test -p game-realtime-webtransport-lib --all-targets --all-features
|
|
```
|
|
|
|
est entièrement propre :
|
|
|
|
```text
|
|
unit tests: 5 passed; 0 failed
|
|
establishment integration tests: 2 passed; 0 failed
|
|
realtime_connection integration tests: 1 passed; 0 failed
|
|
```
|
|
|
|
Le test `primary_stream_round_trip_is_binary_ordered_and_closes_cleanly` confirme le stream bidirectionnel principal, les messages binaires ordonnés et le FIN propre du chemin fiable.
|
|
|
|
## Graphe de dépendances
|
|
|
|
La commande :
|
|
|
|
```bash
|
|
cargo tree -i game-realtime-webtransport-lib --workspace --edges normal
|
|
```
|
|
|
|
ne remonte que :
|
|
|
|
```text
|
|
game-realtime-webtransport-lib v0.3.5-alpha.3
|
|
```
|
|
|
|
Le backend concret ne fuite donc pas vers une crate engine, gameplay ou application existante.
|
|
|
|
## Conséquence
|
|
|
|
`alpha.4` peut matérialiser limites configurables, deadlines, flow-control/backpressure observable, reset/abort/drop/cancellation, cas négatifs de framing et mapping d'erreurs. Le smoke natif public reste séparé en `alpha.5` afin de conserver des deltas de taille bornée.
|