# 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 : ```text 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` : ```text ../builds/sasedev-games/target ``` Ce chemin est extérieur au repository, donc depuis : ```text Web/game-realtime-webtransport-browser-smoke ``` l'artefact se trouve sous : ```text ../../../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 à : ```text 0.3.5-alpha.7.fix.1 ``` Dans `Web/game-realtime-webtransport-browser-smoke/package.json`, `wasm:dev` et `wasm:build` utilisent désormais : ```text ../../../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 ```text 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 : ```text 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 : ```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 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 : ```bash cargo run -p game-realtime-webtransport-browser-smoke ``` Terminal B : ```bash (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 : ```text 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`.