0.0.2-rc.1.fix.1
This commit is contained in:
120
deltas/0.0.2/rc.1.fix.1.md
Normal file
120
deltas/0.0.2/rc.1.fix.1.md
Normal file
@@ -0,0 +1,120 @@
|
||||
<!-- file: deltas/0.0.2/rc.1.fix.1.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta 0.0.2-rc.1.fix.1 — correction de l'audit inline des headers
|
||||
|
||||
## Baseline
|
||||
|
||||
Version attendue avant application :
|
||||
|
||||
```text
|
||||
0.0.2-rc.1
|
||||
```
|
||||
|
||||
Le history `history/0.0.2/rc.1.md` MUST avoir été appliqué et committé avant ce delta.
|
||||
|
||||
Version après application :
|
||||
|
||||
```text
|
||||
0.0.2-rc.1.fix.1
|
||||
```
|
||||
|
||||
## Objet
|
||||
|
||||
Corriger uniquement le script Python inline invalide observé dans la gate de `rc.1`.
|
||||
|
||||
La gate précédente matérialisait une chaîne Python sur deux lignes et produisait :
|
||||
|
||||
```text
|
||||
SyntaxError: unterminated string literal
|
||||
```
|
||||
|
||||
Le correctif n'ajoute pas de troisième audit PGR permanent : le scope RC reste gelé sur les audits `tables` et `liens locaux`.
|
||||
|
||||
L'audit ponctuel des headers est rejoué avec une forme sans échappement ambigu.
|
||||
|
||||
## Scope
|
||||
|
||||
REPLACE :
|
||||
|
||||
```text
|
||||
VERSION
|
||||
```
|
||||
|
||||
ADD :
|
||||
|
||||
```text
|
||||
deltas/0.0.2/rc.1.fix.1.md
|
||||
```
|
||||
|
||||
DELETE : aucun.
|
||||
|
||||
## Validation opérateur
|
||||
|
||||
```bash
|
||||
test "$(cat VERSION)" = "0.0.2-rc.1.fix.1"
|
||||
|
||||
test -f deltas/0.0.2/rc.1.fix.1.md
|
||||
|
||||
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
|
||||
|
||||
roots = [Path(name) for name in ('README.md', 'RULES.md', 'ROADMAP.md', 'CHANGELOG.md')]
|
||||
for directory in ('docs', 'deltas', 'history', 'prompts'):
|
||||
roots.extend(Path(directory).rglob('*.md'))
|
||||
|
||||
paths = sorted(set(roots))
|
||||
errors = []
|
||||
for path in paths:
|
||||
lines = path.read_text(encoding='utf-8').splitlines()
|
||||
expected = f'<!-- file: {path.as_posix()} -->'
|
||||
if len(lines) < 2 or lines[0] != expected:
|
||||
errors.append(f'{path}: invalid file header')
|
||||
elif re.fullmatch(r'<!-- version: [1-9][0-9]* -->', lines[1]) is None:
|
||||
errors.append(f'{path}: invalid version header')
|
||||
|
||||
if errors:
|
||||
for error in errors:
|
||||
print(error)
|
||||
raise SystemExit(1)
|
||||
|
||||
print(f'Markdown header audit: clean ({len(paths)} file(s))')
|
||||
PY
|
||||
|
||||
git diff --check
|
||||
|
||||
git add VERSION deltas/0.0.2/rc.1.fix.1.md
|
||||
|
||||
git diff --cached --check
|
||||
|
||||
git status --short
|
||||
```
|
||||
|
||||
La sortie attendue avant ajout du history est exactement :
|
||||
|
||||
```text
|
||||
M VERSION
|
||||
A deltas/0.0.2/rc.1.fix.1.md
|
||||
```
|
||||
|
||||
## Revue opérateur complémentaire
|
||||
|
||||
- confirmer que les deux audits PGR existants restent propres ;
|
||||
- confirmer que l'audit ponctuel des headers s'exécute réellement et annonce un résultat `clean` ;
|
||||
- confirmer qu'aucun contenu fonctionnel de `rc.1` n'est modifié ;
|
||||
- confirmer que le scope RC reste gelé.
|
||||
|
||||
## Transition
|
||||
|
||||
### PASS
|
||||
|
||||
Créer et appliquer séparément `history/0.0.2/rc.1.fix.1.md`, committer le fix, puis préparer la tranche stable `0.0.2` selon le workflow de release.
|
||||
|
||||
### FAIL
|
||||
|
||||
Rester dans `0.0.2-rc.1.fix.M`. À partir de `.fix.3`, appliquer la revue de plan/diagnostic imposée par la gouvernance.
|
||||
75
history/0.0.2/rc.1.fix.1.md
Normal file
75
history/0.0.2/rc.1.fix.1.md
Normal file
@@ -0,0 +1,75 @@
|
||||
<!-- file: history/0.0.2/rc.1.fix.1.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# History 0.0.2-rc.1.fix.1 — correction de l'audit inline des headers
|
||||
|
||||
## Statut
|
||||
|
||||
PASS
|
||||
|
||||
Le correctif `0.0.2-rc.1.fix.1` a été validé par l'opérateur. L'audit ponctuel des headers Markdown s'exécute désormais correctement sans élargir le scope de la RC.
|
||||
|
||||
## Baseline
|
||||
|
||||
La tranche `0.0.2-rc.1` a été enregistrée `FAIL`, puis committée et poussée sous le commit observé :
|
||||
|
||||
```text
|
||||
8272cfe
|
||||
```
|
||||
|
||||
Version validée après application du correctif :
|
||||
|
||||
```text
|
||||
0.0.2-rc.1.fix.1
|
||||
```
|
||||
|
||||
## Validation opérateur observée
|
||||
|
||||
La version et le delta de correction ont été confirmés :
|
||||
|
||||
```bash
|
||||
test "$(cat VERSION)" = "0.0.2-rc.1.fix.1"
|
||||
test -f deltas/0.0.2/rc.1.fix.1.md
|
||||
```
|
||||
|
||||
Les deux audits PGR permanents ont réussi :
|
||||
|
||||
```text
|
||||
Markdown table audit: clean (2 table(s), 70 file(s))
|
||||
Markdown link audit: clean (49 local link(s), 70 file(s))
|
||||
```
|
||||
|
||||
L'audit ponctuel des headers Markdown s'est exécuté sans erreur et a produit :
|
||||
|
||||
```text
|
||||
Markdown header audit: clean (70 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/rc.1.fix.1.md
|
||||
```
|
||||
|
||||
## Revue qualitative
|
||||
|
||||
Le correctif n'a modifié aucune règle, aucun profil, aucun audit permanent, aucun changelog et aucun prompt.
|
||||
|
||||
Le scope RC reste gelé sur les trois profils technologiques retenus et les deux audits PGR monotâches `tables` et `liens locaux`.
|
||||
|
||||
La correction concerne exclusivement la forme exécutable de la gate RC.
|
||||
|
||||
## Résultat
|
||||
|
||||
`0.0.2-rc.1.fix.1` est validée `PASS`.
|
||||
|
||||
La promotion stable peut maintenant être préparée sous l'identifiant opérationnel :
|
||||
|
||||
```text
|
||||
rel.001
|
||||
```
|
||||
|
||||
La promotion reste une opération pré-tag. Le tag `v0.0.2` ne doit être créé qu'après validation et history `PASS` de `rel.001`.
|
||||
Reference in New Issue
Block a user