Files
games/deltas/0.3.5/beta.1.md
2026-09-22 09:01:57 +02:00

106 lines
3.9 KiB
Markdown

<!-- file: deltas/0.3.5/beta.1.md -->
<!-- version: 1 -->
# Delta 0.3.5-beta.1
## Base requise
`0.3.5-alpha.10.fix.1` validée.
## Objet
Ouvrir la validation large de `0.3.5` sans nouvelle fonctionnalité. Toutes les capacités alpha sont déjà fermées : WebSocket baseline, WebTransport natif fiable, navigateur/WASM, fallback classifié, datagrams backend-spécifiques et mesures loopback bornées.
La version technique devient :
```text
0.3.5-beta.1
```
## Modifications
- enregistrer `history/0.3.5/alpha.10.fix.1.md` avec la gate et les mesures réellement observées ;
- synchroniser la version workspace et le README vers `0.3.5-beta.1` ;
- activer dans le plan la gate beta full-workspace et les preuves runtime/multiplateformes retenues ;
- ne modifier aucun backend, contrat realtime, engine, gameplay, frontend ou dépendance.
`CHANGELOG.md` reste inchangé : sa consolidation est réservée à `beta.2`, conformément aux contrats documentaires et au plan.
## Validation attendue — gate automatisable
```bash
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
cargo test --workspace --all-targets --all-features
cargo run -p game-realtime-websocket-smoke
cargo run -p game-realtime-webtransport-smoke
cargo run -p game-realtime-webtransport-datagram-smoke
cargo run -p game-realtime-transport-fallback-smoke
cargo run --release -p game-realtime-transport-measure
cargo check -p game-realtime-webtransport-lib --target wasm32-unknown-unknown
cargo clippy -p game-realtime-webtransport-lib --target wasm32-unknown-unknown --lib -- -D warnings
cargo build -p game-realtime-webtransport-lib --target wasm32-unknown-unknown
cargo build -p game-realtime-webtransport-browser-smoke --lib --target wasm32-unknown-unknown
(cd Web/game-realtime-webtransport-browser-smoke && npm install && npm run build)
cargo tree -p game-realtime-websocket-lib --edges normal
cargo tree -p game-realtime-webtransport-lib --edges normal
cargo tree -i game-realtime-websocket-lib --workspace --edges normal
cargo tree -i game-realtime-webtransport-lib --workspace --edges normal
```
Si la cible Android/NDK déjà utilisée par le checkout est disponible, ajouter :
```bash
cargo check -p game-realtime-webtransport-lib --target aarch64-linux-android
```
Cette commande est une preuve de portabilité du backend uniquement ; aucun APK/AAB, Gradle ou JNI n'est demandé dans `beta.1` puisque ce périmètre n'a pas été modifié.
## Validation navigateur réelle
Après le build frontend, lancer dans un premier terminal :
```bash
cargo run -p game-realtime-webtransport-browser-smoke
```
Puis dans un second :
```bash
(cd Web/game-realtime-webtransport-browser-smoke && npm run dev)
```
Ouvrir l'URL `OPEN=...` imprimée par le premier terminal. La preuve attendue est :
```text
game-realtime-webtransport-browser-smoke: PASS
```
## Critères beta
La gate doit confirmer :
- aucun test workspace en échec ;
- aucun warning Clippy ;
- tous les smokes realtime retenus en `PASS` ;
- build/smoke navigateur toujours opérationnels ;
- le graphe inverse des backends ne contient aucun `engine-v1-*` ni `game-*-poc` gameplay ;
- la conclusion `webtransport=retain` reste une décision de trajectoire, pas une affirmation de supériorité de performance.
Un défaut fermé produit `0.3.5-beta.1.fix.N`. Une capacité fonctionnelle majeure réellement manquante imposerait de rouvrir une alpha conformément au plan.
## Après validation
Créer `history/0.3.5/beta.1.md`, puis ouvrir `0.3.5-beta.2` pour la consolidation pré-RC : documentation durable, conclusion finale `retained/deferred/rejected`, plateformes validées/non validées, `CHANGELOG.md`, `ROADMAP.md` si nécessaire et prompt `0.3.6`.