0.0.5-beta.1

This commit is contained in:
2026-09-25 18:07:50 +02:00
parent 5a83968813
commit c97ca5f21a
9 changed files with 420 additions and 10 deletions

208
deltas/0.0.5/beta.1.md Normal file
View File

@@ -0,0 +1,208 @@
<!-- file: deltas/0.0.5/beta.1.md -->
<!-- version: 1 -->
# Delta 0.0.5-beta.1 — réconciliation intégrée et transition vers 0.1.0
## Baseline
Version attendue avant application :
```text
0.0.5-alpha.9
```
Le history `history/0.0.5/alpha.9.md` avec statut `PASS` MUST avoir été appliqué, committé et poussé avant ce delta.
Version après application :
```text
0.0.5-beta.1
```
## Objet
Fermer la phase alpha de `0.0.5` par une réconciliation intégrée des décisions réellement matérialisées, puis préparer la transition vers la première baseline réutilisable `0.1.0` sans inventer d'owners, de skeletons ou de releases futures.
Cette tranche :
- rejoue la classification KSP/Games sur l'état PGR obtenu ;
- vérifie que chaque responsabilité nouvelle possède un owner identifiable et que les conventions locales non généralisées restent hors du noyau ;
- inscrit durablement le skeleton Tauri contrôlé comme trajectoire `DEFER` dans `ROADMAP.md`, sans numéro de release réservé ;
- maintient les trois autres axes discutés pendant `alpha.8` au stade de candidats d'horizon, hors roadmap engagée ;
- réconcilie les points d'entrée durables ;
- prépare `prompts/006-V0_1_0_START_PROMPT.md` puisque la mission `0.1.0` est suffisamment connue.
## Décision de roadmap
La décision `alpha.9` a déjà établi qu'un skeleton Tauri complet ne peut pas être matérialisé proprement avant l'existence d'owners Web suffisants. Ce report est plus qu'une idée : il résulte d'une étude et possède des conditions de sortie explicites.
`ROADMAP.md` enregistre donc :
```text
(d) skeleton Tauri pour projets contrôlés
```
sans associer cette trajectoire à `0.1.1`, `0.2.0` ou une autre release hypothétique.
Les axes suivants restent en revanche hors roadmap tant qu'une revue d'horizon ne les engage pas :
- maturation plus large des profils techniques composables ;
- projet documentaire/spécification avec `saselang-bible` comme corpus pilote possible ;
- audit de généricité de PGR hors développement logiciel.
Cette distinction applique directement `300-DOCUMENTATION.md` : une décision de report réelle peut être conservée comme trajectoire différée, tandis qu'un candidat d'horizon ne devient pas automatiquement un engagement macro.
## Réconciliation intégrée
L'étude `001-KSP_GAMES_RECONCILIATION.md` reçoit une matrice de sortie `beta.1` qui confirme notamment :
```text
prompt versionné OWNED
contrats de fichiers/familles OWNED
lifecycle inter-release / horizon OWNED
profil Rust contrôlé OWNED
audits Rust monotâches OWNED
profil Tauri 2 OWNED
skeleton Tauri complet DEFER
Web/Vite/TypeScript/Sass DEFER
Android/JNI spécifique LOCAL/DEFER
architectures métier KSP/Games LOCAL
```
La présence d'un owner PGR n'impose pas sa sélection à tous les projets. Applicabilité, composition et overrides restent gouvernés par le modèle de profils.
## Prompt 006
`prompts/006-V0_1_0_START_PROMPT.md` prépare la reprise après publication réelle de `v0.0.5`.
Il fixe uniquement ce qui est déjà décidé :
- baseline autoritaire `pgr-v0.0.5.zip` et rapport post-tag séparé lorsqu'il existe et est `PASS` ;
- cible `0.1.0`, première tranche `0.1.0-alpha.1` ;
- audit complet de la stable avant extension ;
- mission de première baseline réellement réutilisable ;
- nécessité de produire/consolider le plan `0.1.0` pendant `alpha.1` ;
- revue d'horizon obligatoire avant fermeture ;
- skeleton Tauri conservé `DEFER` tant que ses préconditions ne sont pas réellement satisfaites.
Le prompt MUST NOT être interprété comme un plan détaillé de `0.1.0` ni comme une promesse de matérialiser tous les candidats d'horizon.
## Documentation durable
`README.md` résume désormais les capacités réellement apportées par `0.0.5` sans recopier le plan de release.
`docs/000-README.md` expose les deux contrats de validation Rust et le prompt de reprise candidat `006`.
Le plan `005` enregistre le résultat de la réconciliation intégrée et conserve les responsabilités `rc.1`, stable et `publish.001` déjà attribuées.
## Hors scope
Cette tranche ne :
- crée pas de skeleton Tauri `003` ;
- crée pas de profil Web placeholder ;
- attribue pas de release au travail Tauri différé ;
- ajoute pas les trois candidats d'horizon à la roadmap engagée ;
- modifie pas `CHANGELOG.md`, réservé à la préparation RC puis à la stable ;
- migre pas KSP ou Games ;
- change pas les règles Rust/Tauri fermées pendant les alphas.
## Validation opérateur
Après application du history `PASS` de `alpha.9`, commit/push de cette tranche, puis application du présent delta :
```bash
test "$(cat VERSION)" = '0.0.5-beta.1'
test -f history/0.0.5/alpha.9.md
test -f deltas/0.0.5/beta.1.md
test -f prompts/006-V0_1_0_START_PROMPT.md
test ! -e history/0.0.5/beta.1.md
grep -A2 '^## Statut$' history/0.0.5/alpha.9.md | grep -Fx 'PASS'
grep -Fx '<!-- version: 13 -->' README.md
grep -Fx '<!-- version: 7 -->' ROADMAP.md
grep -Fx '<!-- version: 16 -->' docs/000-README.md
grep -Fx '<!-- version: 13 -->' docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md
grep -Fx '<!-- version: 11 -->' docs/studies/001-KSP_GAMES_RECONCILIATION.md
grep -Fx '<!-- version: 1 -->' prompts/006-V0_1_0_START_PROMPT.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.9.md").read_text(encoding="utf-8")
assert re.search(r"## Statut\s+PASS\s", history)
roadmap = Path("ROADMAP.md").read_text(encoding="utf-8")
assert "(d) skeleton Tauri pour projets contrôlés" in roadmap
assert "Aucun numéro de release n'est réservé pour ce travail" in roadmap
assert "saselang-bible" not in roadmap
study = Path("docs/studies/001-KSP_GAMES_RECONCILIATION.md").read_text(encoding="utf-8")
for phrase in (
"## Réconciliation intégrée `beta.1`",
"skeleton Tauri contrôlé complet",
"`DEFER`",
"repris dans `ROADMAP.md` sans numéro de release",
"Les trois axes plus larges identifiés pendant `alpha.8` restent des **candidats d'horizon**",
):
assert phrase in study, phrase
plan = Path("docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md").read_text(encoding="utf-8")
for phrase in (
"Le `DEFER` du skeleton Tauri contrôlé est suffisamment décidé",
"`prompts/006-V0_1_0_START_PROMPT.md` est préparé",
"il ne transforme pas le skeleton Tauri différé en obligation de `0.1.0`",
):
assert phrase in plan, phrase
prompt = Path("prompts/006-V0_1_0_START_PROMPT.md").read_text(encoding="utf-8")
for phrase in (
"# Prompt de démarrage 0.1.0 — première baseline réutilisable",
"pgr-v0.0.5.zip",
"pgr-0.0.5-publish.001-report.md",
"Version cible : `0.1.0`. Première tranche attendue : `0.1.0-alpha.1`.",
"Le skeleton Tauri contrôlé reste `DEFER`",
"Le plan `0.1.0` MUST programmer une revue d'horizon avant la clôture stable.",
):
assert phrase in prompt, phrase
assert not any(Path("docs/skeletons").glob("003-TAURI*.md"))
print("0.0.5 beta.1 integrated reconciliation: clean (owners reconciled, Tauri defer roadmapped, horizon candidates remain uncommitted, prompt 006 prepared)")
PY
git diff --check
git add VERSION README.md ROADMAP.md \
docs/000-README.md \
docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md \
docs/studies/001-KSP_GAMES_RECONCILIATION.md \
prompts/006-V0_1_0_START_PROMPT.md \
deltas/0.0.5/beta.1.md
git diff --cached --check
git status --short
```
La sortie Git attendue avant ajout du history est exactement :
```text
M README.md
M ROADMAP.md
M VERSION
A deltas/0.0.5/beta.1.md
M docs/000-README.md
M docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md
M docs/studies/001-KSP_GAMES_RECONCILIATION.md
A prompts/006-V0_1_0_START_PROMPT.md
```