5.3 KiB
Delta 0.3.4-rc.1
Base requise
0.3.4-beta.1, validée par l'utilisateur le 2026-09-21.
Objectif
Créer la candidate de publication 0.3.4 après validation large de la baseline realtime, sans rouvrir le comportement réseau.
Cette tranche ferme VER-PHASE-010 : historique beta, documentation durable, changelog, prompt de la version suivante et gel RC.
Gel fonctionnel
0.3.4-rc.1 n'ajoute :
- aucun transport ;
- aucune API réseau ;
- aucune dépendance tierce ;
- aucun TLS ;
- aucun wire codec ;
- aucun protocole session/joueur/room ;
- aucune synchronisation gameplay ;
- aucune simulation authoritative ;
- aucun changement moteur, jeu, SDL, Android, Tauri ou WASM.
Les seules modifications techniques sont la promotion de workspace.package.version vers 0.3.4-rc.1. Le code Rust realtime validé en beta reste inchangé.
Tout défaut de publication fermé relève de 0.3.4-rc.1.fix.N selon VER-RC-*. Une réouverture fonctionnelle invalide la RC.
Validation beta acquise
history/0.3.4/beta.1.md consigne la gate réelle :
- audits Rust/workspace, Markdown et distribution propres ;
cargo check --workspacepropre ;- Clippy workspace strict propre ;
cargo test --workspace --all-targets --all-features: 53 tests réussis, 0 échec ;- smoke runtime
game-realtime-websocket-smoke: PASS; - backend sur Tokio
1.53.1, tokio-tungstenite/Tungstenite0.30.0, sans pile TLS ; - arbre inverse limité à
game-realtime-websocket-smoke, sans dépendance backend danscrates/games/oucrates/engines/.
Aucune beta supplémentaire n'est créée uniquement par cérémonie.
Consolidation documentaire
La revue DOC-CRATE-* conclut :
game-realtime-transport-libreçoit unREADME.mddurable décrivant son contrat, ses frontières et le sens des dépendances ; son API est assez petite pour ne pas justifier unUSAGE.mdséparé ;game-realtime-websocket-libreçoit unREADME.mddurable et unUSAGE.md, car configuration, client/listener, limites, deadlines et smoke constituent un workflow de consommation non trivial ;game-realtime-websocket-smokereste sans document local supplémentaire : la commande Cargo unique, le plan et le delta couvrent entièrement son rôle.
Les documents locaux ne contiennent aucun journal de prerelease.
Changelog et roadmap
CHANGELOG.md reçoit l'entrée 0.3.4-rc.1 avec le scope réellement validé.
ROADMAP.md est relue mais reste inchangée : 0.3.4 ne devient (x) qu'après validation de la RC et promotion stable. 0.3.5 reste le POC WebTransport/QUIC prévu ensuite.
Prompt suivant
Ajout de :
prompts/006-V0_3_5_START_PROMPT.md
Le prompt part de la future stable/taggée v0.3.4, rappelle que la RC/stable doit être terminée si nécessaire, et cadre 0.3.5-alpha.1 autour de :
- recherche actuelle des stacks WebTransport/QUIC ;
- challenge du contrat transport-neutral livré par
0.3.4; - plateformes navigateur/native/Android réellement testables ;
- exigences TLS/certificats/HTTP3/UDP ;
- fallback WebSocket au niveau d'ownership approprié ;
- comparaison mesurée sans présumer que WebTransport doit être retenu ;
- maintien hors scope des couches session/synchronisation/simulation.
Le prompt ne présente aucune validation future de la RC ou de la stable comme acquise.
Fichiers
Modifiés :
Cargo.toml
README.md
CHANGELOG.md
docs/000-README.md
docs/plans/004-V0_3_4_REALTIME_TRANSPORT_WEBSOCKET_PLAN.md
Ajoutés :
crates/common/game-realtime-transport-lib/README.md
crates/common/game-realtime-websocket-lib/README.md
crates/common/game-realtime-websocket-lib/USAGE.md
history/0.3.4/beta.1.md
prompts/006-V0_3_5_START_PROMPT.md
deltas/0.3.4/rc.1.md
Validation RC
Depuis la racine :
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 -p game-realtime-transport-lib --all-targets --all-features
cargo test -p game-realtime-websocket-lib --all-targets --all-features
cargo run -p game-realtime-websocket-smoke
cargo tree -i game-realtime-websocket-lib --workspace --edges normal
Le test workspace complet n'est pas répété par cérémonie : aucun Rust, dépendance ou contrat transverse n'a changé depuis la gate beta qui l'a déjà validé. Il redevient obligatoire si un fix RC touche ces éléments.
Le smoke doit afficher :
game-realtime-websocket-smoke: PASS
L'arbre inverse doit continuer à montrer uniquement le launcher de smoke comme consommateur du backend WebSocket.
Après validation
Si la RC est propre, la promotion vers 0.3.4 est mécanique :
workspace.package.version = 0.3.4;- ajout de
history/0.3.4/rc.1.md; - entrée stable dans
CHANGELOG.md; ROADMAP.mdpasse0.3.4en(x);- clôture du plan
004et de son index ; - ajustement mécanique de
prompts/006-V0_3_5_START_PROMPT.mdsi une référence devient certaine ; deltas/0.3.4/rel.001.md.
Aucun nouveau comportement ne doit apparaître dans cette promotion.