Files
pgr/deltas/0.1.0/beta.1.md
2026-09-26 23:10:02 +02:00

238 lines
7.6 KiB
Markdown

<!-- file: deltas/0.1.0/beta.1.md -->
<!-- version: 1 -->
# Delta 0.1.0-beta.1 — réconciliation finale et revue d'horizon
## Baseline et version
Baseline attendue : commit opérateur de `0.1.0-alpha.5`, réalisé après application de `history/0.1.0/alpha.5.md` avec statut `PASS`.
Le hash de ce commit n'est pas anticipé.
Version avant application :
```text
0.1.0-alpha.5
```
Version après application :
```text
0.1.0-beta.1
```
## Objet
Fermer la phase alpha de `0.1.0` en réconciliant la baseline réellement validée et en exécutant la revue d'horizon obligatoire avant RC.
La tranche :
- enregistre le `PASS` de `alpha.5` dans le plan actif ;
- matérialise `003-V0_1_0_HORIZON_REVIEW.md` ;
- engage dans `ROADMAP.md` uniquement les prochaines releases `0.1.x` suffisamment décidées ;
- conserve WASM, serveur Rust et deployment/operations sans réservation prématurée ;
- prépare `007-V0_1_1_START_PROMPT.md` pour la prochaine cible Web, sans l'activer avant publication de `v0.1.0`.
Aucun profil technique, template Rust/Cargo, skeleton ou script d'audit n'est modifié dans `beta.1`.
## Scope
REPLACE :
```text
VERSION
ROADMAP.md
docs/000-README.md
docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md
docs/studies/000-README.md
```
ADD :
```text
deltas/0.1.0/beta.1.md
docs/studies/003-V0_1_0_HORIZON_REVIEW.md
prompts/007-V0_1_1_START_PROMPT.md
```
DELETE : aucun.
`README.md`, `RULES.md`, `CHANGELOG.md`, les profils, skeletons, templates techniques et scripts restent inchangés.
## Décision de revue d'horizon
Les releases suivantes sont engagées :
```text
0.1.1 fondation frontend Web
0.1.2 réévaluation Java / Gradle
0.1.3 réévaluation Android
0.1.4 domaine Tauri et levée conditionnelle du DEFER
0.1.5 adoption Games
0.1.6 adoption KSP
0.1.7 audits Rust/Clippy statiques Python-only
```
Cette séquence applique le principe « une release/session par domaine cohérent » et conserve Games avant KSP.
`0.1.4` n'autorise pas par avance le skeleton Tauri : la release doit d'abord vérifier que `0.1.1` a réellement fourni les owners Web nécessaires.
WASM et serveur Rust/Actix ou alternative restent non numérotés. Le futur domaine deployment/operations reste un horizon majeur possible, notamment `0.4.x` ou `0.5.x`, sans réservation précise.
## Prochaine cible
Après stable `v0.1.0` et `publish.* PASS`, la prochaine cible engagée est :
```text
0.1.1 — fondation frontend Web
```
Le prompt `prompts/007-V0_1_1_START_PROMPT.md` demande un audit indépendant de la stable et du corpus Games réellement fourni. Il ne migre pas Games et ne crée ni Tauri, ni WASM, ni serveur Rust.
## Validation opérateur
Après application du history `PASS`, commit/push de `alpha.5`, puis application du présent delta :
```bash
test "$(cat VERSION)" = '0.1.0-beta.1'
git cat-file -e HEAD:history/0.1.0/alpha.5.md
test -f history/0.1.0/alpha.5.md
test -f deltas/0.1.0/beta.1.md
test -f docs/studies/003-V0_1_0_HORIZON_REVIEW.md
test -f prompts/007-V0_1_1_START_PROMPT.md
test ! -e history/0.1.0/beta.1.md
grep -A2 '^## Statut$' history/0.1.0/alpha.5.md | grep -Fx 'PASS'
grep -Fx '<!-- version: 9 -->' ROADMAP.md
grep -Fx '<!-- version: 22 -->' docs/000-README.md
grep -Fx '<!-- version: 8 -->' docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md
grep -Fx '<!-- version: 3 -->' docs/studies/000-README.md
grep -Fx '<!-- version: 1 -->' docs/studies/003-V0_1_0_HORIZON_REVIEW.md
grep -Fx '<!-- version: 1 -->' prompts/007-V0_1_1_START_PROMPT.md
```
Contrôle structurel de la revue :
```bash
python3 -B - <<'PYGATE'
from pathlib import Path
import re
history = Path("history/0.1.0/alpha.5.md").read_text(encoding="utf-8")
roadmap = Path("ROADMAP.md").read_text(encoding="utf-8")
plan = Path("docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md").read_text(encoding="utf-8")
study = Path("docs/studies/003-V0_1_0_HORIZON_REVIEW.md").read_text(encoding="utf-8")
prompt = Path("prompts/007-V0_1_1_START_PROMPT.md").read_text(encoding="utf-8")
tauri = Path("docs/studies/002-TAURI_SKELETON_DECISION.md").read_text(encoding="utf-8")
assert re.search(r"## Statut\s+PASS\s", history)
expected = {
"0.1.1": "fondation frontend Web",
"0.1.2": "Java/Maven/Gradle",
"0.1.3": "Android",
"0.1.4": "Tauri",
"0.1.5": "sasedev-games",
"0.1.6": "khadhroony-solana-project",
"0.1.7": "Rust/Clippy",
}
for version, phrase in expected.items():
assert f"- `( ) {version}`" in roadmap, version
assert phrase in roadmap, phrase
assert "- `( ) 0.1.8`" not in roadmap
assert "WASM" in roadmap
assert "serveur Web Rust / Actix Web ou alternative" in roadmap
assert "deployment & operations" in roadmap
assert "aucun numéro précis n'est réservé" in roadmap
for phrase in (
"`0.1.1` — fondation frontend Web",
"`0.1.5` — adoption de Games",
"`0.1.6` — adoption de KSP",
"`0.1.7` — audits Rust/Clippy statiques Python",
"Candidats laissés sans numéro",
"Déploiement et exploitation",
"La décision `DEFER` de `002-TAURI_SKELETON_DECISION.md` reste vraie pendant `0.1.0`.",
):
assert phrase in study, phrase
assert "Statut opérateur : **PASS**." in plan
assert "Statut opérateur : **à valider**." in plan
assert "0.1.7 audits Rust/Clippy statiques Python-only" in plan
assert "WASM, serveur Rust et deployment restent non numérotés." in plan
for phrase in (
"# Prompt de démarrage 0.1.1 — fondation frontend Web",
"games-v0.3.6.zip",
"TypeScript",
"Vite",
"Sass/CSS",
"Le skeleton Tauri reste `DEFER` pendant cette release.",
"0.1.2",
"0.1.3",
):
assert phrase in prompt, phrase
assert "DEFER" in tauri
print("0.1.0 beta.1 horizon review audit: clean (0.1.1..0.1.7 engaged, Tauri conditional, deferred domains remain unnumbered)")
PYGATE
```
Puis rejouer les preuves PGR :
```bash
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
git diff --check
git add VERSION ROADMAP.md docs/000-README.md \
docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md \
docs/studies/000-README.md \
docs/studies/003-V0_1_0_HORIZON_REVIEW.md \
prompts/007-V0_1_1_START_PROMPT.md \
deltas/0.1.0/beta.1.md
git diff --cached --check
git status --short
```
Le scope indexé attendu avant ajout du history de `beta.1` est exactement :
```text
M ROADMAP.md
M VERSION
A deltas/0.1.0/beta.1.md
M docs/000-README.md
M docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md
M docs/studies/000-README.md
A docs/studies/003-V0_1_0_HORIZON_REVIEW.md
A prompts/007-V0_1_1_START_PROMPT.md
```
## Revue opérateur complémentaire
Confirmer que :
- la roadmap n'engage pas un catalogue exhaustif de technologies ;
- chaque release `0.1.1` à `0.1.7` possède un domaine cohérent ;
- Games reste avant KSP ;
- le skeleton Tauri n'est pas présenté comme déjà autorisé ;
- WASM et serveur Rust restent réellement sans numéro ;
- deployment/operations n'est pas artificiellement fixé à `0.4.0` ou `0.5.0` ;
- `007-V0_1_1_START_PROMPT.md` ne doit être exécuté qu'après `v0.1.0` publié et vérifié ;
- aucun profil, skeleton technique ou script d'audit n'est ajouté/modifié dans cette tranche.
## Transition
PASS : produire `history/0.1.0/beta.1.md`, fermer la tranche avec le handoff opérateur automatique, puis préparer `0.1.0-rc.1`.
FAIL : conserver le résultat réel dans le history et corriger par `beta.1.fix.N` ou REPLAN si la revue macro elle-même doit changer.