Files
pgr/deltas/0.0.5/alpha.9.md
2026-09-25 17:59:25 +02:00

5.8 KiB

Delta 0.0.5-alpha.9 — décision de skeleton Tauri contrôlé

Baseline et version

Baseline attendue : commit opérateur complet de 0.0.5-alpha.8, réalisé après application de history/0.0.5/alpha.8.md avec statut PASS.

Version après application :

0.0.5-alpha.9

Mission

Décider si les owners PGR réellement matérialisés permettent de créer un skeleton Tauri actionnable pour les projets contrôlés sans transformer ce skeleton en propriétaire implicite de règles Web encore absentes.

Scope

REPLACE :

VERSION
docs/000-README.md
docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md
docs/skeletons/000-README.md
docs/studies/000-README.md

ADD :

deltas/0.0.5/alpha.9.md
docs/studies/002-TAURI_SKELETON_DECISION.md

DELETE : aucun.

Aucun fichier docs/skeletons/003-TAURI*.md n'est créé.

Décision

Résultat :

DEFER

Le host Tauri est suffisamment cadré par les owners existants : Rust/Cargo, Tauri, plateformes applicables et règles générales de skeleton. La partie frontend candidate ne l'est pas encore : PGR ne possède aucun profil Web/Vite/TypeScript/Sass.

Créer maintenant le skeleton obligerait donc sa specification à posséder de fait la structure et la validation Web, alors qu'un skeleton doit composer des owners et non compenser leur absence.

Candidat conservé

La décision ne rejette pas le skeleton organisationnel. Elle conserve comme hypothèse à réévaluer lorsque les owners Web existeront :

host Cargo direct
+ frontend/
+ Vite
+ TypeScript
+ Sass
+ Bootstrap lorsque pertinent
+ TS-RS pour les DTO Rust partagés
+ tauri.rs comme owner Tauri
+ plugins/capabilities explicitement intégrés
+ WASM séparé par défaut

Aucune de ces lignes ne crée dans 0.0.5 un owner Web qui n'existe pas encore.

Sources et vérification

La décision repose d'abord sur les baselines KSP 0.3.16 et Games 0.3.5 déjà autoritaires pour la réconciliation. La préparation a également vérifié la documentation Tauri 2 courante concernant la flexibilité du frontend, le scaffold src-tauri/, l'initialisation manuelle et l'installation explicite des plugins/capabilities.

L'étude détaillée est docs/studies/002-TAURI_SKELETON_DECISION.md.

Hors scope

Cette tranche ne :

  • crée pas un skeleton décoratif ;
  • matérialise pas les futurs profils Web ;
  • modifie pas 710-TAURI.md ;
  • choisit pas un package manager universel ;
  • modifie pas les règles Rust fermées par alpha.7/alpha.8 ;
  • réserve pas une release pour le futur skeleton.

Validation opérateur

Après application du history PASS de alpha.8, commit/push de cette tranche, puis application du présent delta :

test "$(cat VERSION)" = '0.0.5-alpha.9'
test -f history/0.0.5/alpha.8.md
test -f deltas/0.0.5/alpha.9.md
test -f docs/studies/002-TAURI_SKELETON_DECISION.md
test ! -e docs/skeletons/003-TAURI.md
test ! -e docs/skeletons/003-TAURI_CONTROLLED_PROJECT.md
test ! -e history/0.0.5/alpha.9.md

grep -A2 '^## Statut$' history/0.0.5/alpha.8.md | grep -Fx 'PASS'
grep -Fx '<!-- version: 15 -->' docs/000-README.md
grep -Fx '<!-- version: 12 -->' docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md
grep -Fx '<!-- version: 4 -->' docs/skeletons/000-README.md
grep -Fx '<!-- version: 2 -->' docs/studies/000-README.md
grep -Fx '<!-- version: 1 -->' docs/studies/002-TAURI_SKELETON_DECISION.md

python3 -B -m unittest discover -s tests -v

python3 -B scripts/audit_markdown_headers.py \
    README.md RULES.md ROADMAP.md CHANGELOG.md docs deltas history prompts
python3 -B scripts/audit_markdown_tables.py \
    README.md RULES.md ROADMAP.md CHANGELOG.md docs deltas history prompts
python3 -B scripts/audit_markdown_links.py \
    README.md RULES.md ROADMAP.md CHANGELOG.md docs deltas history prompts

python3 -B - <<'PY'
from pathlib import Path
import re

history = Path("history/0.0.5/alpha.8.md").read_text(encoding="utf-8")
assert re.search(r"## Statut\s+PASS\s", history)

study = Path("docs/studies/002-TAURI_SKELETON_DECISION.md").read_text(encoding="utf-8")
for phrase in (
    "Décision `alpha.9` :",
    "DEFER",
    "Aucun des `8` hosts n'utilise `src-tauri/`.",
    "PGR `0.0.5` **ne crée pas** de skeleton Tauri `003`.",
    "PGR `0.0.5` ne possède aucun profil Web dédié",
    "001-PROJECT_GOVERNANCE_FOUNDATION",
    "002-RUST_CARGO_WORKSPACE",
    "Bootstrap comme baseline de présentation lorsqu'un framework CSS généraliste est utile",
):
    assert phrase in study, phrase

index = Path("docs/skeletons/000-README.md").read_text(encoding="utf-8")
assert "Aucun `003-TAURI...` n'est donc créé dans `0.0.5`." in index
assert "profils Web réellement matérialisés" in index

plan = Path("docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md").read_text(encoding="utf-8")
assert "### alpha.9 — décision de skeleton Tauri pour projets contrôlés — DEFER" in plan
assert "aucun skeleton Tauri `003` n'est créé dans `0.0.5`" in plan
assert "### beta.1 — réconciliation intégrée" in plan

assert not any(Path("docs/skeletons").glob("003-TAURI*.md"))

print("0.0.5 alpha.9 Tauri skeleton decision: clean (host ready, Web owners missing, decorative skeleton rejected, exit conditions recorded)")
PY

git diff --check

git add VERSION \
    docs/000-README.md \
    docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md \
    docs/skeletons/000-README.md \
    docs/studies/000-README.md \
    docs/studies/002-TAURI_SKELETON_DECISION.md \
    deltas/0.0.5/alpha.9.md

git diff --cached --check
git status --short

La sortie Git attendue avant ajout du history est exactement :

M  VERSION
A  deltas/0.0.5/alpha.9.md
M  docs/000-README.md
M  docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md
M  docs/skeletons/000-README.md
M  docs/studies/000-README.md
A  docs/studies/002-TAURI_SKELETON_DECISION.md