0.1.2-beta.1

This commit is contained in:
2026-09-28 01:03:26 +02:00
parent 226d61b041
commit 4dcb0dd89e
7 changed files with 421 additions and 10 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: README.md -->
<!-- version: 20 -->
<!-- version: 21 -->
# Project Governance Rules
@@ -11,7 +11,7 @@ Le dépôt officiel est `https://git.sasedev.com/Sasedev/pgr`.
## Statut
PGR a clôturé sa phase de fondation `0.0.x`, dispose avec `0.1.0` de sa première baseline réutilisable stable et avec `0.1.1` d’une fondation frontend Web stable, composable et indépendante du host. La release `0.1.2` est ouverte pour réévaluer pratiquement le profil Java/Maven/Gradle à partir de Games, sans absorber le scope Android réservé à `0.1.3`.
PGR a clôturé sa phase de fondation `0.0.x`, dispose avec `0.1.0` de sa première baseline réutilisable stable et avec `0.1.1` d’une fondation frontend Web stable, composable et indépendante du host. La release `0.1.2` est entrée en beta après réévaluation du corpus Games et scission de l'ancien owner combiné en `520-JAVA`, `521-MAVEN` et `522-GRADLE`; aucun artefact technique supplémentaire n'est retenu à ce stade et le scope Android reste réservé à `0.1.3`.
La version courante est définie par [`VERSION`](VERSION). La release `0.0.1` établit la gouvernance normative et documentaire de PGR lui-même. La release `0.0.2` ajoute les premiers profils réutilisables Rust/Cargo, Java/Maven/Gradle et Android, ainsi que deux audits Markdown. La release `0.0.3` fournit les premiers modèles Rust/Cargo, deux audits de style Rust facultatifs, l'audit des headers Markdown et la spécification du message manuel de reprise. La release `0.0.4` définit le contrat transversal des skeleton specifications, ajoute une fondation composable de gouvernance locale et une première spécialisation Rust/Cargo workspace fondée sur les profils `500 + 510` et les cinq templates existants. La release `0.0.5` réconcilie PGR avec les baselines réelles de `khadhroony-solana-project` et `sasedev-games` : prompts versionnés, contrats documentaires locaux, lifecycle inter-release, profil Rust strict et audits monotâches, premier profil Tauri 2 et décision explicite de différer son skeleton complet jusqu'à matérialisation d'owners Web suffisants. La release `0.1.0` stabilise la première baseline réutilisable : adoption `ADOPT / KEEP-LOCAL / OVERRIDE / DEFER`, skeletons/templates Rust/Cargo exercés par dry-run, clôture `rel.N`, handoff opérateur automatique et trajectoire `0.1.1` à `0.1.7` issue d'une revue d'horizon explicite. La release `0.1.1` stabilise la fondation frontend Web : owners indépendants TypeScript/package/Vite/CSS-Sass, déclarations de types externes conditionnelles, package manager neutre, validation frontend indépendante du host et skeleton Web composable, tout en conservant le skeleton Tauri en `DEFER` jusqu’à son réexamen `0.1.4`.
@@ -31,7 +31,7 @@ La version courante est définie par [`VERSION`](VERSION). La release `0.0.1` é
- [`docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md`](docs/plans/005-V0_0_5_RECONCILIATION_PLAN.md) — plan historique de réconciliation `0.0.5` ;
- [`docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md`](docs/plans/006-V0_1_0_REUSABLE_BASELINE_PLAN.md) — plan historique de la première baseline réutilisable `0.1.0` ;
- [`docs/plans/007-V0_1_1_WEB_FRONTEND_FOUNDATION_PLAN.md`](docs/plans/007-V0_1_1_WEB_FRONTEND_FOUNDATION_PLAN.md) — plan historique de la fondation frontend Web stable `0.1.1` ;
- [`docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md`](docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md) — plan actif de réévaluation Java/Maven/Gradle `0.1.2`, fondé sur le corpus Games et borné avant Android `0.1.3` ;
- [`docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md`](docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md) — plan actif `0.1.2` : réévaluation Games, scission Java/Maven/Gradle et réconciliation beta avant RC, avec Android maintenu hors scope ;
- [`docs/studies/001-KSP_GAMES_RECONCILIATION.md`](docs/studies/001-KSP_GAMES_RECONCILIATION.md) — étude de réconciliation et classification des écarts entre PGR, KSP et Games ;
- [`docs/skeletons/000-README.md`](docs/skeletons/000-README.md) — index des skeleton specifications et de leur contrat de composition ;
- [`docs/skeletons/001-PROJECT_GOVERNANCE_FOUNDATION.md`](docs/skeletons/001-PROJECT_GOVERNANCE_FOUNDATION.md) — fondation composable de gouvernance locale pour un projet adoptant PGR ;

View File

@@ -1 +1 @@
0.1.2-alpha.3
0.1.2-beta.1

275
deltas/0.1.2/beta.1.md Normal file
View File

@@ -0,0 +1,275 @@
<!-- file: deltas/0.1.2/beta.1.md -->
<!-- version: 1 -->
# Delta 0.1.2-beta.1 — réconciliation intégrée et décision finale d'artefacts
## Baseline et version
Baseline attendue : commit opérateur de `0.1.2-alpha.3`, réalisé après application de `history/0.1.2/alpha.3.md` avec statut `PASS`.
Version avant application :
```text
0.1.2-alpha.3
```
Version après application :
```text
0.1.2-beta.1
```
## Objet
Cette tranche exécute la réconciliation prévue après la scission des owners Java, Maven et Gradle. Elle ne crée aucune nouvelle règle fonctionnelle et ne modifie aucun des profils `520-JAVA.md`, `521-MAVEN.md`, `522-GRADLE.md` ou `610-ANDROID.md`.
La beta confirme que la séparation `520/521/522` résout l'ambiguïté d'applicabilité sans importer les choix locaux Games ni ouvrir le scope Android.
## Scope
REPLACE :
```text
VERSION
README.md
docs/000-README.md
docs/architecture/003-RULE_PROFILE_MODEL.md
docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md
```
ADD :
```text
deltas/0.1.2/beta.1.md
```
DELETE : aucun.
Aucun `history/0.1.2/beta.1.md` n'est anticipé.
## Réconciliation des owners
La revue confirme les contrats suivants :
```text
520-JAVA.md Java uniquement
521-MAVEN.md Maven uniquement lorsqu'il est réellement utilisé
522-GRADLE.md Gradle uniquement lorsqu'il est réellement utilisé
```
La composition reste explicite. Un projet Java/Maven applique `520 + 521`; un projet Java/Gradle applique `520 + 522`; un projet Gradle sans Java n'applique pas `520` par simple transitivité.
L'ancien `520-JAVA_MAVEN_GRADLE.md` reste un bridge `SUPERSEDED` non normatif pour la compatibilité documentaire historique et ne redevient pas sélectionnable.
## Réconciliation contre Games
Games fournit une preuve réelle pour Java et Gradle, mais aucune preuve Maven. La beta confirme donc que :
- la séparation JDK de build / niveau source / bytecode-runtime est généralisable ;
- l'ownership `settings` / root / module / propriétés partagées est généralisable ;
- une politique Gradle système doit avoir une contrainte effectivement vérifiée ;
- le Wrapper reste un mécanisme conditionnel de reproductibilité ;
- Groovy DSL et absence de Wrapper restent des choix locaux Games ;
- JDK 25, Java 17, Gradle 9.6.0+ et Gradle 9.7.1 ne deviennent aucun minimum PGR ;
- aucun contenu Maven nouveau n'est déduit d'un corpus qui n'utilise pas Maven.
## Frontière Android
La beta ne modifie pas `610-ANDROID.md`.
Restent explicitement hors du scope `0.1.2` :
```text
AGP
compileSdk / targetSdk / minSdk
SDK / NDK
ABI / JNI
manifests / resources
APK / AAB / signing
Variant API
AVD / devices / smokes Android
contraintes 16 KB
SDL3 et architecture produit Games
```
Ces responsabilités restent réservées à `0.1.3` ou à un owner plus spécifique.
## Décision finale d'artefacts
Aucun artefact technique supplémentaire n'est justifié pour `0.1.2`.
Ne sont donc pas ajoutés :
```text
nouveau contrat docs/validation/
template Java/Maven/Gradle générique
skeleton Java/Gradle générique
audit Python Java/Maven/Gradle
artefact Maven déduit de Games
```
La raison est positive et vérifiable : les trois owners couvrent déjà les responsabilités génériques démontrées, tandis que Java, Maven et Gradle eux-mêmes possèdent les preuves exécutables de compilation/build/test. Ajouter un artefact uniquement pour remplir la release introduirait de la duplication ou une convention insuffisamment éprouvée.
## Documentation durable
La tranche actualise :
- le statut racine de la release ;
- l'index documentaire `0.1.2` ;
- le modèle architectural avec la décision beta durable ;
- le plan actif avec le `PASS` de `alpha.3` et la décision finale d'artefacts.
Aucun changement n'est requis dans `RULES.md`, `docs/rules/000-README.md` ou `ROADMAP.md`, déjà réconciliés pendant `alpha.3`.
## Validation opérateur
Après application du history `PASS` de `alpha.3`, commit/push de `alpha.3`, puis application du présent delta :
```bash
test "$(cat VERSION)" = '0.1.2-beta.1'
git cat-file -e HEAD:history/0.1.2/alpha.3.md
test -f history/0.1.2/alpha.3.md
test -f deltas/0.1.2/beta.1.md
test ! -e history/0.1.2/beta.1.md
grep -A2 '^## Statut$' history/0.1.2/alpha.3.md | grep -Fx 'PASS'
grep -Fx '<!-- version: 21 -->' README.md
grep -Fx '<!-- version: 34 -->' docs/000-README.md
grep -Fx '<!-- version: 8 -->' docs/architecture/003-RULE_PROFILE_MODEL.md
grep -Fx '<!-- version: 4 -->' docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md
grep -Fx '<!-- version: 4 -->' docs/rules/520-JAVA.md
grep -Fx '<!-- version: 1 -->' docs/rules/521-MAVEN.md
grep -Fx '<!-- version: 1 -->' docs/rules/522-GRADLE.md
grep -Fx '<!-- version: 4 -->' docs/rules/520-JAVA_MAVEN_GRADLE.md
grep -Fx '<!-- version: 3 -->' docs/rules/610-ANDROID.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 - <<'PYGATE'
from pathlib import Path
import re
history = Path('history/0.1.2/alpha.3.md').read_text(encoding='utf-8')
assert re.search(r'## Statut\s+PASS\s', history)
java = Path('docs/rules/520-JAVA.md').read_text(encoding='utf-8')
maven = Path('docs/rules/521-MAVEN.md').read_text(encoding='utf-8')
gradle = Path('docs/rules/522-GRADLE.md').read_text(encoding='utf-8')
legacy = Path('docs/rules/520-JAVA_MAVEN_GRADLE.md').read_text(encoding='utf-8')
android = Path('docs/rules/610-ANDROID.md').read_text(encoding='utf-8')
architecture = Path('docs/architecture/003-RULE_PROFILE_MODEL.md').read_text(encoding='utf-8')
plan = Path('docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md').read_text(encoding='utf-8')
assert '# Profil Java' in java
assert '# Profil Maven' in maven
assert '# Profil Gradle' in gradle
assert '`SUPERSEDED` depuis `0.1.2-alpha.3`.' in legacy
assert 'Il ne constitue plus un profil sélectionnable' in legacy
for current in ('RULES.md', 'docs/000-README.md', 'docs/rules/000-README.md', 'docs/rules/610-ANDROID.md'):
assert '520-JAVA_MAVEN_GRADLE.md' not in Path(current).read_text(encoding='utf-8'), current
for local_choice in (
'JDK 25',
'source/target 17',
'Gradle 9.6.0',
'Gradle 9.7.1',
'AGP 9.4.0',
):
assert local_choice not in java, local_choice
assert local_choice not in maven, local_choice
assert local_choice not in gradle, local_choice
for android_term in (
'compileSdk',
'targetSdk',
'minSdk',
'NDK',
'ABI/JNI',
'APK/AAB',
'device/AVD',
'SDL3',
):
assert android_term not in maven, android_term
assert android_term not in gradle, android_term
assert 'Matrice AGP / Gradle / JDK' in android
assert '`compileSdk`, `targetSdk` et `minSdk`' in android
for phrase in (
'## Réconciliation beta de Java / Maven / Gradle en `0.1.2`',
'aucune preuve Maven réelle',
'Aucun nouveau contrat sous `docs/validation/`, template, skeleton ou audit Python Java/Maven/Gradle n\'est justifié.',
):
assert phrase in architecture, phrase
for phrase in (
'## Décision après `alpha.3` et réconciliation `beta.1`',
'La gate opérateur de `alpha.3` est `PASS`',
'aucun artefact technique supplémentaire',
'aucun corpus Maven',
'`0.1.3`',
):
assert phrase in plan, phrase
for foreign in (
'Cargo.toml',
'crates/knowledge-domain-lib/src/content_family.rs',
'deltas/0.0.1/alpha.3.fix.2.md',
'history/0.0.1/alpha.3.fix.1.md',
):
assert not Path(foreign).exists(), foreign
print('0.1.2 beta.1 reconciliation audit: clean (owners stable, Games-local choices not generalized, no extra artifacts justified, Android boundary preserved)')
PYGATE
git diff --check
git add README.md VERSION \
docs/000-README.md \
docs/architecture/003-RULE_PROFILE_MODEL.md \
docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md \
deltas/0.1.2/beta.1.md
git diff --cached --check
git status --short
```
Le scope indexé attendu avant ajout du history est exactement :
```text
M README.md
M VERSION
A deltas/0.1.2/beta.1.md
M docs/000-README.md
M docs/architecture/003-RULE_PROFILE_MODEL.md
M docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md
```
La revue qualitative doit confirmer que :
- aucun choix local Games n'est promu comme minimum générique ;
- Maven n'est pas présenté comme validé par Games ;
- les owners `520/521/522` restent indépendants et composables ;
- aucun nouveau fichier technique n'est ajouté pour satisfaire une structure théorique ;
- Android reste entièrement hors du scope fonctionnel de `0.1.2` ;
- la documentation durable reflète la scission et la décision d'artefacts sans réécrire les snapshots historiques.
## Transition
### PASS
Produire `history/0.1.2/beta.1.md`, puis préparer `0.1.2-rc.1` pour le gel de scope et la release gate complète.
### FAIL
Consigner le diagnostic réel dans `history/0.1.2/beta.1.md`, puis produire `beta.1.fix.N` ou effectuer un REPLAN uniquement si un défaut d'ownership ou de frontière ne peut pas être corrigé localement.

View File

@@ -1,5 +1,5 @@
<!-- file: docs/000-README.md -->
<!-- version: 33 -->
<!-- version: 34 -->
# Documentation PGR
@@ -22,7 +22,7 @@ Les templates techniques copiables sous `templates/` restent séparés des instr
## Points d'entrée de 0.1.2
- [`plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md`](plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md) — plan actif de réévaluation pratique du profil Java/Maven/Gradle à partir du corpus Games autoritaire, avec classification `ADOPT / KEEP-LOCAL / OVERRIDE / DEFER` et frontière Android explicite.
- [`plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md`](plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md) — plan actif de `0.1.2`, depuis la réévaluation Games jusqu'à la scission `520/521/522`, puis la réconciliation beta et le gel RC, avec frontière Android explicite.
- [`rules/520-JAVA.md`](rules/520-JAVA.md) — owner Java issu de la réévaluation du profil historique combiné ; il possède JDK, compatibilité source/bytecode, structure, API et tests Java.
- [`rules/521-MAVEN.md`](rules/521-MAVEN.md) — spécialisation Maven séparée afin que Maven ne devienne pas implicitement applicable à tout projet Java.
- [`rules/522-GRADLE.md`](rules/522-GRADLE.md) — spécialisation Gradle éprouvée contre Games, avec ownership du build, politique Wrapper/système et propriétés partagées/locales.

View File

@@ -1,5 +1,5 @@
<!-- file: docs/architecture/003-RULE_PROFILE_MODEL.md -->
<!-- version: 7 -->
<!-- version: 8 -->
# Modèle de profils de règles PGR
@@ -233,6 +233,24 @@ Un projet Gradle sans Java n'applique pas `520` uniquement parce qu'il utilise `
Cette scission remplace l'owner courant combiné sans réécrire les documents historiques qui décrivent fidèlement l'état `0.0.2` à `0.1.1`. L'ancien chemin `520-JAVA_MAVEN_GRADLE.md` reste un bridge `SUPERSEDED` non normatif afin de préserver leurs liens.
## Réconciliation beta de Java / Maven / Gradle en `0.1.2`
La réconciliation `beta.1` confirme la scission introduite en `alpha.3` sans ajouter de quatrième owner ou d'artefact technique générique. Les owners courants restent :
```text
520 — Java
521 — Maven
522 — Gradle
```
Le corpus Games apporte une preuve pratique pour Java et Gradle, mais aucune preuve Maven réelle. Cette asymétrie ne remet pas en cause `521-MAVEN.md` : elle interdit seulement de présenter Games comme validation d'une convention Maven nouvelle ou de créer un artefact Maven à partir d'un corpus qui n'en possède pas.
La revue confirme également que les décisions locales Games ne deviennent pas des minima généraux : ni JDK 25, ni cible Java 17, ni Gradle 9.6.0+, ni Groovy DSL, ni absence de Wrapper ne sont imposés par les profils courants. Seuls les principes réutilisables démontrés sont conservés : séparation JDK/source/bytecode, ownership du build, contrainte système effectivement vérifiée et Wrapper conditionnel.
Aucun nouveau contrat sous `docs/validation/`, template, skeleton ou audit Python Java/Maven/Gradle n'est justifié. Les toolchains officielles restent propriétaires des preuves exécutables lorsque des artefacts Java/Maven/Gradle réels existent.
Enfin, Android reste un raffinement de plateforme : `610-ANDROID.md` possède AGP, SDK/NDK, ABI/JNI, manifests/resources, packaging/signing et smokes. La réconciliation `0.1.2` ne constitue pas le démarrage de `0.1.3`.
## Activation de la famille framework en `0.0.5`
La réconciliation indépendante de KSP et Games apporte le premier framework suffisamment répété pour activer la famille `700` : Tauri 2. Le profil `710-TAURI.md` se compose au-dessus de Rust/Cargo et, selon les targets, des profils plateforme applicables.

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md -->
<!-- version: 3 -->
<!-- version: 4 -->
# Plan 0.1.2 — réévaluation Java / Maven / Gradle
@@ -318,6 +318,23 @@ La décision d'artefacts techniques ne change pas : aucun template, skeleton, au
Le scope Android reste inchangé et réservé à `0.1.3`. La scission ne modifie que les références nécessaires dans `610-ANDROID.md` afin qu'Android compose explicitement Gradle et Java uniquement lorsqu'ils sont réellement applicables.
## Décision après `alpha.3` et réconciliation `beta.1`
La gate opérateur de `alpha.3` est `PASS` : `48/48` tests Python, audits Markdown propres, gate de scission propre, bridge historique préservé, frontière Android maintenue et scope Git conforme. Aucun `alpha.3.fix.N` ni nouveau REPLAN n'est requis.
La réconciliation beta rejoue les trois owners contre Games, `500-LANGUAGES.md`, `610-ANDROID.md` et les règles générales de validation. Elle confirme :
- `520-JAVA.md` reste applicable au langage Java indépendamment du build tool ;
- `521-MAVEN.md` ne devient applicable que lorsqu'un projet utilise Maven et n'est pas présenté comme éprouvé par Games, qui ne fournit aucun corpus Maven ;
- `522-GRADLE.md` ne devient applicable que lorsqu'un projet utilise Gradle et conserve uniquement les principes génériques démontrés ;
- JDK 25, cible Java 17, Gradle 9.6.0+, Gradle 9.7.1, Groovy DSL et absence de Wrapper restent des décisions locales/corpus et non des minima PGR ;
- AGP, SDK/NDK, ABI/JNI, manifests/resources, packaging/signing, device/AVD, contraintes 16 KB et SDL3 restent possédés hors des owners Java/Maven/Gradle et réservés à la réévaluation Android `0.1.3` ;
- l'ancien `520-JAVA_MAVEN_GRADLE.md` reste uniquement un bridge historique `SUPERSEDED`.
La décision finale d'artefacts pour `0.1.2` est donc **aucun artefact technique supplémentaire** : aucun nouveau contrat de validation, template, skeleton, audit Python Java/Maven/Gradle ou artefact Maven n'apporte une valeur démontrée par le corpus disponible. Les owners `520/521/522` suffisent et les toolchains officielles restent propriétaires des preuves exécutables.
La beta n'ouvre aucune nouvelle règle fonctionnelle ; elle consolide l'état durable avant `rc.1`.
## Mission de `0.1.2`
La release doit produire un profil Java/Maven/Gradle mieux éprouvé par une implémentation réelle tout en restant générique.
@@ -363,7 +380,7 @@ docs/skeletons/... aucun skeleton Java/Gradle générique justifié par
artefacts Maven aucun corpus Maven réel fourni
```
Cette décision sera rejouée en `beta.1` après validation opérateur de la scission.
Cette décision est rejouée et confirmée dans `beta.1` après validation opérateur de la scission.
## Trajectoire prévisionnelle de `0.1.2`
@@ -385,7 +402,7 @@ Scinder le profil combiné en `520-JAVA.md`, `521-MAVEN.md` et `522-GRADLE.md` a
Ne pas modifier les documents historiques qui décrivent fidèlement l'ancien owner combiné. Ne pas ajouter de template, skeleton, audit ou artefact Maven/Android.
Statut opérateur : **à valider**.
Statut opérateur : **PASS**.
### beta.1 — réconciliation et décision d'artefacts

101
history/0.1.2/beta.1.md Normal file
View File

@@ -0,0 +1,101 @@
<!-- file: history/0.1.2/beta.1.md -->
<!-- version: 1 -->
# History 0.1.2-beta.1 — réconciliation intégrée Java / Maven / Gradle
## Statut
PASS
La gate opérateur de `0.1.2-beta.1` exécutée le `2026-09-28` a réussi. Elle confirme que les owners Java, Maven et Gradle issus de la scission restent indépendants et composables, que les choix locaux Games ne deviennent pas des minima PGR, qu'aucun artefact technique supplémentaire n'est justifié et que le scope Android reste réservé à `0.1.3`.
## Baseline opérateur
La tranche `0.1.2-alpha.3` a été clôturée avec son history `PASS`, puis committée et poussée avant application de `beta.1` :
```text
commit 226d61b
message 0.1.2-alpha.3
push origin/master PASS
```
Après application de `beta.1`, les contrôles initiaux ont confirmé :
```text
VERSION 0.1.2-beta.1
history/0.1.2/alpha.3.md présent dans HEAD et le workspace
deltas/0.1.2/beta.1.md présent
history/0.1.2/beta.1.md absent pendant la gate
README.md version 21
docs/000-README.md version 34
docs/architecture/003-RULE_PROFILE_MODEL.md version 8
docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md version 4
docs/rules/520-JAVA.md version 4
docs/rules/521-MAVEN.md version 1
docs/rules/522-GRADLE.md version 1
docs/rules/520-JAVA_MAVEN_GRADLE.md version 4
docs/rules/610-ANDROID.md version 3
```
Le history `alpha.3` a été retrouvé avec statut `PASS`.
## Réconciliation Java / Maven / Gradle
La gate spécifique a affiché :
```text
0.1.2 beta.1 reconciliation audit: clean (owners stable, Games-local choices not generalized, no extra artifacts justified, Android boundary preserved)
```
Elle confirme notamment :
- `520-JAVA.md` possède Java indépendamment du build tool ;
- `521-MAVEN.md` ne s'applique que lorsque Maven est réellement utilisé et n'est pas présenté comme éprouvé par Games ;
- `522-GRADLE.md` ne s'applique que lorsque Gradle est réellement utilisé ;
- l'ancien `520-JAVA_MAVEN_GRADLE.md` reste un bridge `SUPERSEDED` non sélectionnable ;
- JDK 25, `source/target 17`, Gradle `9.6.0`, Gradle `9.7.1` et AGP `9.4.0` ne deviennent pas des minima des owners Java/Maven/Gradle ;
- les responsabilités Android restent possédées par `610-ANDROID.md` ;
- aucun nouveau contrat `docs/validation/`, template, skeleton, audit Python Java/Maven/Gradle ou artefact Maven n'est justifié.
Les quatre chemins Knowledge introduits accidentellement pendant la chaîne antérieure restent absents après le recovery `alpha.2.fix.1`.
## Tests et audits PGR
La suite Python globale a exécuté `48` tests, tous réussis :
```text
Ran 48 tests in 0.787s
OK
```
Les audits documentaires sont propres :
```text
Markdown header audit: clean (244 file(s))
Markdown table audit: clean (10 table(s), 244 file(s))
Markdown link audit: clean (295 local link(s), 244 file(s))
```
## Contrôles Git
`git diff --check` et `git diff --cached --check` n'ont produit aucun diagnostic.
Le statut indexé transmis avant ajout du présent history est exactement :
```text
M README.md
M VERSION
A deltas/0.1.2/beta.1.md
M docs/000-README.md
M docs/architecture/003-RULE_PROFILE_MODEL.md
M docs/plans/008-V0_1_2_JAVA_GRADLE_REEVALUATION_PLAN.md
```
Le scope correspond exactement au delta `beta.1`. Aucun owner `520/521/522`, bridge historique, profil Android, template, skeleton, contrat de validation ou script d'audit n'a été modifié par cette tranche.
## Décision
`0.1.2-beta.1` est `PASS`. Aucun fix ni REPLAN n'est requis.
La release peut entrer en `0.1.2-rc.1` pour geler le scope, préparer le changelog candidat, rejouer le release gate complet et préparer le prompt de reprise `0.1.3` sans démarrer la réévaluation Android avant publication vérifiée de `v0.1.2`.