diff --git a/VERSION b/VERSION index 38ab062..ead0ba4 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.2-alpha.4 +0.0.2-alpha.4.fix.1 diff --git a/deltas/0.0.2/alpha.4.fix.1.md b/deltas/0.0.2/alpha.4.fix.1.md new file mode 100644 index 0000000..353b672 --- /dev/null +++ b/deltas/0.0.2/alpha.4.fix.1.md @@ -0,0 +1,106 @@ + + + +# Delta 0.0.2-alpha.4.fix.1 — cohérence de la gate Java + +## Baseline + +Version attendue avant application : + +```text +0.0.2-alpha.4 +``` + +Le history `history/0.0.2/alpha.4.md` MUST avoir été appliqué avant ce correctif. + +Version après application : + +```text +0.0.2-alpha.4.fix.1 +``` + +## Objet + +Corriger uniquement le défaut de cohérence détecté pendant la gate opérateur de `alpha.4`. + +Le profil décrivait déjà la structure Java canonique sous forme d'arbre, mais la validation cherchait littéralement : + +```text +src/main/ +``` + +sans que cette chaîne existe telle quelle dans le document. + +Le correctif ajoute une phrase explicite listant les chemins canoniques déjà impliqués par l'arborescence : + +```text +src/main/java/ +src/main/resources/ +src/test/java/ +src/test/resources/ +``` + +Aucune règle Java, Maven ou Gradle nouvelle n'est introduite. + +## Scope + +REPLACE : + +```text +VERSION +docs/rules/520-JAVA_MAVEN_GRADLE.md +``` + +ADD : + +```text +deltas/0.0.2/alpha.4.fix.1.md +``` + +DELETE : aucun. + +## Validation opérateur + +```bash +test "$(cat VERSION)" = "0.0.2-alpha.4.fix.1" + +test -f docs/rules/520-JAVA_MAVEN_GRADLE.md +test -f deltas/0.0.2/alpha.4.fix.1.md + +grep -F 'src/main/java/' docs/rules/520-JAVA_MAVEN_GRADLE.md +grep -F 'src/main/resources/' docs/rules/520-JAVA_MAVEN_GRADLE.md +grep -F 'src/test/java/' docs/rules/520-JAVA_MAVEN_GRADLE.md +grep -F 'src/test/resources/' docs/rules/520-JAVA_MAVEN_GRADLE.md + +grep -F 'le JDK de développement SHOULD être une version LTS' docs/rules/520-JAVA_MAVEN_GRADLE.md +grep -F 'PGR MUST NOT ajouter un Maven Wrapper uniquement par cérémonie.' docs/rules/520-JAVA_MAVEN_GRADLE.md +grep -F 'Un Gradle Wrapper SHOULD être versionné lorsqu' docs/rules/520-JAVA_MAVEN_GRADLE.md + +python3 -B scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs deltas history prompts + +git diff --check + +git add VERSION docs/rules/520-JAVA_MAVEN_GRADLE.md deltas/0.0.2/alpha.4.fix.1.md + +git diff --cached --check + +git status --short +``` + +La sortie attendue avant ajout du history est : + +```text +M VERSION +A deltas/0.0.2/alpha.4.fix.1.md +M docs/rules/520-JAVA_MAVEN_GRADLE.md +``` + +## Transition + +### PASS + +Créer et appliquer séparément `history/0.0.2/alpha.4.fix.1.md`, committer le correctif, puis préparer `0.0.2-alpha.5` consacré au profil Android. + +### FAIL + +Rester dans `0.0.2-alpha.4.fix.M`. Le correctif MUST rester limité à la cohérence de la tranche Java/Maven/Gradle. diff --git a/docs/rules/520-JAVA_MAVEN_GRADLE.md b/docs/rules/520-JAVA_MAVEN_GRADLE.md index 8ec53ea..76a12a0 100644 --- a/docs/rules/520-JAVA_MAVEN_GRADLE.md +++ b/docs/rules/520-JAVA_MAVEN_GRADLE.md @@ -1,5 +1,5 @@ - + # Profil Java / Maven / Gradle @@ -52,6 +52,8 @@ src/ PGR SHOULD NOT remplacer cette convention par une arborescence propriétaire telle que `sources/`, `java-code/` ou `tests-java/` sans contrainte réelle. +Les chemins canoniques correspondants sont donc notamment `src/main/java/`, `src/main/resources/`, `src/test/java/` et `src/test/resources/`. + Lorsqu'un projet distingue des tests d'intégration, environnementaux ou live, il SHOULD utiliser un source set ou un module explicitement déclaré par le build plutôt que détourner `src/test/`. ## Packages et ownership diff --git a/history/0.0.2/alpha.4.fix.1.md b/history/0.0.2/alpha.4.fix.1.md new file mode 100644 index 0000000..9865e86 --- /dev/null +++ b/history/0.0.2/alpha.4.fix.1.md @@ -0,0 +1,81 @@ + + + +# History 0.0.2-alpha.4.fix.1 — cohérence de la gate Java + +## Statut + +PASS + +Le correctif `0.0.2-alpha.4.fix.1` a été validé par l'opérateur. Le défaut de cohérence entre le profil Java/Maven/Gradle et sa gate est corrigé sans modification de scope fonctionnel. + +## Baseline + +La tranche `0.0.2-alpha.4` a été enregistrée `FAIL`, puis committée et poussée sous le commit observé : + +```text +70ff272 +``` + +Version validée après application du correctif : + +```text +0.0.2-alpha.4.fix.1 +``` + +## Validation opérateur observée + +La version et les fichiers attendus ont été confirmés : + +```bash +test "$(cat VERSION)" = "0.0.2-alpha.4.fix.1" +test -f docs/rules/520-JAVA_MAVEN_GRADLE.md +test -f deltas/0.0.2/alpha.4.fix.1.md +``` + +Les quatre chemins Java canoniques ajoutés par le correctif ont été retrouvés : + +```text +src/main/java/ +src/main/resources/ +src/test/java/ +src/test/resources/ +``` + +Les invariants principaux du profil sont toujours présents : + +```text +le JDK de développement SHOULD être une version LTS +PGR MUST NOT ajouter un Maven Wrapper uniquement par cérémonie. +Un Gradle Wrapper SHOULD être versionné lorsqu'il apporte une reproductibilité utile +``` + +L'audit Markdown PGR a réussi : + +```text +Markdown table audit: clean (2 table(s), 58 file(s)) +``` + +`git diff --check` et `git diff --cached --check` n'ont produit aucun diagnostic. + +Le scope Git observé avant le présent history est exactement : + +```text +M VERSION +A deltas/0.0.2/alpha.4.fix.1.md +M docs/rules/520-JAVA_MAVEN_GRADLE.md +``` + +## Résultat + +`0.0.2-alpha.4.fix.1` est validée `PASS`. + +Le profil Java/Maven/Gradle est clos pour le scope de `0.0.2`. + +La tranche suivante autorisée est : + +```text +0.0.2-alpha.5 +``` + +Elle est consacrée au premier profil plateforme Android. Les spécialisations Rust/JNI, Tauri et autres compositions restent explicitement hors scope de cette tranche.