Files
pgr/history/0.0.5/alpha.6.md
2026-09-25 09:16:06 +02:00

134 lines
5.4 KiB
Markdown
Raw Permalink 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: history/0.0.5/alpha.6.md -->
<!-- version: 1 -->
# History 0.0.5-alpha.6 — premier profil framework Tauri 2
## Statut
FAIL
La gate opérateur de `0.0.5-alpha.6` exécutée le `2026-09-25` valide la présence du profil Tauri, la suite Python globale, les trois audits Markdown et le scope Git, mais le contrôle structurel ciblé fourni par le delta ne s'exécute pas : son heredoc contient une chaîne multilignes entre quotes simples et Python termine avec `SyntaxError: unterminated string literal`.
La revue fonctionnelle immédiatement associée apporte en plus une clarification de scope nécessaire : pour les projets Tauri que l'organisation contrôle, le host doit hériter intégralement des règles Rust sélectionnées tandis que le frontend et ses choix de stack appartiennent à un owner/skeleton distinct. Le profil livré ne sépare pas encore assez explicitement cette convention d'instanciation du contrat Tauri universel.
Le statut global est donc `FAIL`. Les preuves mécaniques réussies restent valides, mais la gate complète n'est pas passée et le contrat doit être précisé avant de continuer.
## Baseline et version
La tranche part du commit opérateur de `0.0.5-alpha.5.fix.1` :
```text
81c7a72 0.0.5-alpha.5.fix.1
```
Le push vers `origin/master` a réussi avant l'application de `alpha.6`.
La version contrôlée après application du delta est :
```text
0.0.5-alpha.6
```
`history/0.0.5/alpha.5.fix.1.md`, `deltas/0.0.5/alpha.6.md`, `docs/rules/700-FRAMEWORKS.md` et `docs/rules/710-TAURI.md` sont présents. `history/0.0.5/alpha.6.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`, à `08:15:06`–`08:42:54`.
Les contrôles de présence, statut et révision ont réussi :
```text
history/0.0.5/alpha.5.fix.1.md PASS
RULES.md version 11
docs/rules/000-README.md version 13
docs/architecture/003-RULE_PROFILE_MODEL.md version 4
docs/rules/700-FRAMEWORKS.md version 1
docs/rules/710-TAURI.md version 1
```
La suite Python globale a exécuté `37` tests, tous réussis :
```text
Ran 37 tests in 0.505s
OK
```
Les audits documentaires affichent :
```text
Markdown header audit: clean (146 file(s))
Markdown table audit: clean (7 table(s), 146 file(s))
Markdown link audit: clean (148 local link(s), 146 file(s))
```
`git diff --check` et `git diff --cached --check` n'ont produit aucun diagnostic.
Le scope Git observé est exactement :
```text
M RULES.md
M VERSION
A deltas/0.0.5/alpha.6.md
M docs/000-README.md
M docs/architecture/003-RULE_PROFILE_MODEL.md
M docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md
M docs/rules/000-README.md
A docs/rules/700-FRAMEWORKS.md
A docs/rules/710-TAURI.md
M docs/studies/001-KSP_GAMES_RECONCILIATION.md
```
## Échec du contrôle ciblé
Le heredoc de validation contient cette valeur sous forme de chaîne Python délimitée par des quotes simples sur plusieurs lignes :
```text
VERSION
↓
workspace.package.version
↓
package Cargo du host
↓
version applicative Tauri
```
Python l'interprète comme une chaîne non terminée et produit :
```text
SyntaxError: unterminated string literal (detected at line 21)
```
Le message de succès `0.0.5 alpha.6 Tauri profile audit: clean (...)` n'a donc pas été produit. Une gate obligatoire du delta n'est pas passée.
## Clarification fonctionnelle
La revue opérateur précise le modèle attendu pour les projets contrôlés par l'organisation :
- une application Tauri est d'abord un host Rust/Cargo et doit hériter des mêmes conventions Rust que les autres crates/applications du projet ;
- les exemples générés par Tauri ne justifient pas d'exceptions implicites aux règles Rust locales ;
- le frontend est un scope distinct ; pour les projets contrôlés, le layout `frontend/`, Vite, TypeScript, Sass et Bootstrap constituent des préférences de skeleton, pas des invariants universels de Tauri ;
- `cargo tauri add` n'est pas la voie obligatoire d'intégration des plugins : l'ajout explicite des dépendances Cargo/frontend et du code d'initialisation à partir de la documentation du plugin est une pratique volontaire ;
- WASM doit normalement rester une unité séparée et n'hérite pas des règles Tauri simplement parce qu'il partage éventuellement le même dépôt ;
- le POC Tauri mobile Games non concluant ne permet pas de conclure que Tauri Android/iOS est inadapté à d'autres projets.
Cette clarification révèle en parallèle un écart plus ancien du profil Rust PGR : plusieurs conventions strictes déjà retenues dans la conception initiale ne sont pas encore toutes matérialisées dans `510-RUST_CARGO.md`. Ce sujet dépasse le fix Tauri et doit devenir une tranche normale distincte.
## Résultat
`0.0.5-alpha.6` est enregistré `FAIL`.
Le profil framework/Tauri est une base utile et les preuves mécaniques générales sont propres, mais le gate ciblé doit être corrigé et la frontière entre profil Tauri universel, héritage Rust et conventions de skeleton doit être explicitée.
## Transition
Appliquer le présent history puis committer/pousser `0.0.5-alpha.6`.
La correction suivante est :
```text
0.0.5-alpha.6.fix.1
```
Elle doit corriger le heredoc de validation et la composition Tauri/Rust/frontend sans modifier encore `510-RUST_CARGO.md` ni créer de skeleton. Le plan doit ensuite réserver une tranche normale à la complétude du profil Rust strict avant la décision de skeleton Tauri.