Files
games/deltas/0.1.0/1-alpha.2.fix.2.md

155 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- file: deltas/0.1.0/1-alpha.2.fix.2.md -->
<!-- version: 1 -->
# Delta 0.1.0-1-alpha.2.fix.2
## Base
Base déclarée : `0.1.0-1-alpha.2.fix.1`, techniquement compilable mais architecture Tauri/WASM rejetée avant validation fonctionnelle.
## Réorganisation
Le POC est réaligné sur le modèle des apps Desk KSP.
### Tauri
```text
crates/apps/game-reflex-poc-tauri/
├── src/lib.rs
├── src/tauri.rs
├── src/runtime.rs
├── src/main.rs
├── frontend/
├── capabilities/
├── package.json
├── tsconfig.json
├── vite.config.ts
└── tauri.conf.json
```
`lib.rs` reste une façade. `tauri.rs` assemble Tauri et expose les commandes qui délèguent aux modules propriétaires.
### WASM
```text
crates/apps/game-reflex-poc-wasm/
├── src/lib.rs
└── src/runtime.rs
```
La crate WASM ne dépend pas de Tauri. La crate Tauri ne compile plus elle-même en `wasm32`.
### Frontend
Le frontend utilise Vite + TypeScript.
Le hook Tauri `beforeDevCommand` exécute :
```text
python3 ../../../scripts/build_reflex_tauri_wasm.py && npm run dev
```
Le hook `beforeBuildCommand` exécute le build WASM puis `npm run build`.
`npm run build` n'est donc pas une gate manuelle indépendante.
### Logging
Backend :
```text
tracing
tauri-plugin-tracing
```
Frontend :
```text
@fltsci/tauri-plugin-tracing
```
La capability inclut :
```text
tracing:default
```
Le frontend trace startup, chargement WASM, pointeur, score et erreurs via le plugin.
## Suppressions nécessaires
Un ZIP delta ne supprime pas les anciens fichiers lors d'un simple overlay.
Après extraction du delta, appliquer la liste :
```bash
while IFS= read -r path; do
rm -rf -- "$path"
done < deltas/0.1.0/1-alpha.2.fix.2.delete.txt
```
Cette suppression retire uniquement l'ancien prototype statique et l'ancien module WASM interne à la crate Tauri.
## Installation frontend
Depuis :
```bash
cd crates/apps/game-reflex-poc-tauri
npm install
cd ../../..
```
## Validation Rust
```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 deltas history
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test -p engine-v1-platform-api --all-targets --all-features
cargo test -p game-reflex-poc --all-targets --all-features
cargo test -p game-reflex-poc-wasm --all-targets --all-features
```
## Gate WASM
```bash
python3 scripts/build_reflex_tauri_wasm.py
test -f crates/apps/game-reflex-poc-tauri/frontend/wasm/game_reflex_poc_wasm.js
test -f crates/apps/game-reflex-poc-tauri/frontend/wasm/game_reflex_poc_wasm_bg.wasm
```
## Smoke Tauri
Depuis la crate :
```bash
cd crates/apps/game-reflex-poc-tauri
cargo tauri dev
```
Tauri lance lui-même Vite et le build WASM.
Critères :
- fenêtre locale 405 × 720 ;
- frontend Vite/TypeScript ;
- cible Reflex visible ;
- clic comptabilisé et cible déplacée ;
- score visible ;
- traces frontend visibles via le plugin tracing ;
- aucun site distant.
## Transition
Si les gates et le smoke passent, `0.1.0-1-alpha.2.fix.2` valide le POC restructuré.
En cas d'échec imputable au projet, produire `0.1.0-1-alpha.2.fix.3`.