3.7 KiB
Delta 0.3.5-alpha.7.fix.1
Base requise
0.3.5-alpha.7, candidate dont la gate utilisateur du 2026-09-22 a validé fmt, les trois audits, cargo check --workspace, Clippy strict, les sept tests du contrat realtime commun, les vingt tests WebTransport, le smoke natif PASS, puis check/Clippy/build réels du backend en wasm32-unknown-unknown ainsi que check/Clippy et build WASM de game-realtime-webtransport-browser-smoke.
La gate échoue uniquement pendant le sous-script wasm:build de npm run build, après une compilation Rust release réussie :
error: failed reading '../../builds/sasedev-games/target/wasm32-unknown-unknown/release/game_realtime_webtransport_browser_smoke.wasm'
Caused by:
No such file or directory (os error 2)
alpha.7 n'est donc pas historisée comme validée avant ce correctif.
Cause
Le workspace configure son target-dir Cargo dans .cargo/config.toml :
../builds/sasedev-games/target
Ce chemin est extérieur au repository, donc depuis :
Web/game-realtime-webtransport-browser-smoke
l'artefact se trouve sous :
../../../builds/sasedev-games/target/...
et non sous ../../builds/....
Le vite.config.ts était déjà correct : il dérive repositoryRoot, puis ../builds/sasedev-games/.... Le défaut est limité aux chemins littéraux des scripts npm et à l'ancre correspondante de l'audit de distribution.
Correction
La version technique passe à :
0.3.5-alpha.7.fix.1
Dans Web/game-realtime-webtransport-browser-smoke/package.json, wasm:dev et wasm:build utilisent désormais :
../../../builds/sasedev-games/target/...
../../../builds/sasedev-games/game-realtime-webtransport-browser-smoke/wasm
DIST-LAYOUT-078 est aligné sur ce chemin externe réel.
Aucun code Rust, protocole WebTransport, framing, deadline, certificat, pin SHA-256, API publique ou dépendance n'est modifié.
Fichiers modifiés
Cargo.toml
README.md
Web/game-realtime-webtransport-browser-smoke/package.json
docs/plans/005-V0_3_5_WEBTRANSPORT_QUIC_POC_PLAN.md
scripts/audit_distribution_layout.py
Nouveau fichier :
deltas/0.3.5/alpha.7.fix.1.md
Aucun fichier history/0.3.5/alpha.7.md n'est créé avant une gate entièrement verte du correctif.
Plan
Le forecast fonctionnel ne change pas. Après validation du fix et du smoke navigateur réel, 0.3.5-alpha.8 reste la tranche du fallback WebSocket au niveau composition.
Validation attendue
La correction touche build/config et version ; relancer d'abord la gate statique et les builds concernés :
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 build -p game-realtime-webtransport-browser-smoke --lib --target wasm32-unknown-unknown
(cd Web/game-realtime-webtransport-browser-smoke && npm install && npm run build)
Puis exécuter le smoke runtime réel avec deux terminaux.
Terminal A :
cargo run -p game-realtime-webtransport-browser-smoke
Terminal B :
(cd Web/game-realtime-webtransport-browser-smoke && npm run dev)
Ouvrir l'URL OPEN=... imprimée par le Terminal A. Le résultat attendu dans la page puis dans le Terminal A reste :
game-realtime-webtransport-browser-smoke: PASS
Après validation
Créer history/0.3.5/alpha.7.fix.1.md à partir des résultats réellement fournis, puis ouvrir directement 0.3.5-alpha.8.