# History 0.0.5-alpha.6.fix.1 — composition Tauri/Rust/frontend ## Statut FAIL La gate opérateur de `0.0.5-alpha.6.fix.1` exécutée le `2026-09-25` valide la suite Python globale, les trois audits Markdown et le scope Git attendu, mais le contrôle structurel ciblé du fix échoue encore avant ses assertions : une phrase contenant l'apostrophe de `l'extérieur` est placée dans une chaîne Python délimitée elle-même par des quotes simples, ce qui produit `SyntaxError: unterminated string literal`. La revue opérateur associée apporte en outre une clarification plus complète du modèle Tauri/Rust attendu. Les règles réellement versionnées dans KSP et Games montrent que plusieurs conventions avaient été sous-estimées : layout Tauri direct sans `src-tauri/`, `frontend/` explicite, `lib.rs` façade, `main.rs` launcher mince, `tauri.rs` centralisant l'assemblage et les wrappers `#[tauri::command]`, séparation du WASM et, dans KSP, contrats frontend TS-RS générés depuis les DTO Rust. Le statut global est donc `FAIL`. Le fix doit être corrigé sans absorber encore la réconciliation Rust générale ni la future matérialisation d'un skeleton Tauri complet. ## Baseline et version La tranche part du commit opérateur de `0.0.5-alpha.6` : ```text 0f6a2e2 0.0.5-alpha.6 ``` Le push vers `origin/master` a réussi avant l'application de `alpha.6.fix.1`. La version contrôlée après application du delta est : ```text 0.0.5-alpha.6.fix.1 ``` `history/0.0.5/alpha.6.md` est présent avec statut `FAIL`; `deltas/0.0.5/alpha.6.fix.1.md` est présent et `history/0.0.5/alpha.6.fix.1.md` était absent pendant la gate. ## Validation opérateur observée L'opérateur a fourni les sorties du `2026-09-25` depuis `~/Projects/pgr`, à `09:16:02`–`10:08:50`. Les contrôles de présence, statut et révision ont réussi. La suite Python globale a exécuté `37` tests, tous réussis : ```text Ran 37 tests in 0.504s OK ``` Les audits documentaires affichent : ```text Markdown header audit: clean (148 file(s)) Markdown table audit: clean (7 table(s), 148 file(s)) Markdown link audit: clean (148 local link(s), 148 file(s)) ``` `git diff --check` et `git diff --cached --check` n'ont produit aucun diagnostic. Le scope Git observé est exactement : ```text M VERSION A deltas/0.0.5/alpha.6.fix.1.md M docs/architecture/003-RULE_PROFILE_MODEL.md M docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md M docs/rules/700-FRAMEWORKS.md M docs/rules/710-TAURI.md M docs/studies/001-KSP_GAMES_RECONCILIATION.md ``` ## Échec du contrôle ciblé Le heredoc contient notamment une chaîne Python simple avec le texte `l'extérieur`. L'apostrophe ferme prématurément la chaîne et produit : ```text SyntaxError: unterminated string literal (detected at line 10) ``` Le message de succès attendu du contrôle ciblé n'a donc pas été produit. Une gate obligatoire du fix reste en échec. ## Clarification issue de la revue KSP/Games La relecture des règles et layouts réels confirme : - les `6` applications Desk KSP et les `2` applications Tauri Games possèdent toutes directement à la racine de leur crate `Cargo.toml`, `build.rs`, `package.json`, `tsconfig.json` et `tauri.conf.json`, ainsi que `src/` et `frontend/`; aucune n'utilise `src-tauri/` ; - KSP formalise `lib.rs` comme façade, `main.rs` comme launcher mince et `tauri.rs` comme owner des wrappers `#[tauri::command]`; Games reprend la même séparation `lib.rs`/`tauri.rs` ; - KSP impose pour ses apps Desk les bindings TS-RS générés depuis les DTO Rust comme source de vérité frontend ; Games n'a pas encore ce contrat, ce qui en fait un candidat fort pour la convention stricte des projets contrôlés plutôt qu'un invariant universel de Tauri ; - Games formalise explicitement que WASM reste une crate distincte de la crate Tauri ; - les règles de noms de crates et la discipline Rust stricte sont plus larges que Tauri et doivent être traitées dans les tranches Rust suivantes. ## Résultat `0.0.5-alpha.6.fix.1` est enregistré `FAIL`. ## Transition Appliquer le présent history puis committer/pousser `0.0.5-alpha.6.fix.1`. La correction suivante est : ```text 0.0.5-alpha.6.fix.2 ``` Elle doit rendre la gate ciblée robuste et compléter le profil Tauri avec les conventions fortement éprouvées qui appartiennent réellement à ce scope, tout en replanifiant séparément les conventions Rust/nomenclature et les audits de style restants.