Files
pgr/deltas/0.1.5/rc.1.fix.1.md
2026-10-01 10:55:57 +02:00

6.8 KiB
Raw Blame History

Delta 0.1.5-rc.1.fix.1 — alignement des assertions documentaires RC

Diagnostic

La gate opérateur de 0.1.5-rc.1 a validé le freeze fonctionnel, les 55/55 tests Python, les audits d'hygiène/Markdown et le scope Git, mais trois assertions exactes prévues par rc.1 n'ont produit aucune correspondance :

grep -F 'forte recommandation non obligatoire' CHANGELOG.md
grep -F 'aucun numéro de version Games n’est figé' docs/studies/005-V0_1_5_HORIZON_REVIEW.md
grep -F 'ADOPT / KEEP-LOCAL / OVERRIDE / DEFER / N/A' docs/studies/005-V0_1_5_HORIZON_REVIEW.md

history/0.1.5/rc.1.md enregistre donc FAIL.

Le diagnostic est strictement documentaire : les contrats normatifs, la décision d'horizon, le prompt 012 et les validations techniques restent acquis.

Objet

Aligner les formulations de présentation avec les chaînes canoniques exigées par la gate RC sans rouvrir aucun owner normatif et sans commencer rel.1 ou 0.1.6.

Version après application :

0.1.5-rc.1.fix.1

Scope

REPLACE :

VERSION
CHANGELOG.md
docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md
docs/studies/005-V0_1_5_HORIZON_REVIEW.md

ADD :

deltas/0.1.5/rc.1.fix.1.md

DELETE : aucun.

README.md, ROADMAP.md, docs/000-README.md, le prompt 012, tous les owners normatifs, skeletons, templates, validations et histories antérieurs MUST rester inchangés.

Corrections

CHANGELOG.md passe en révision 21 et emploie la formulation canonique forte recommandation non obligatoire pour SHOULD / SHOULD NOT.

docs/studies/005-V0_1_5_HORIZON_REVIEW.md passe en révision 2 et :

  • contient explicitement la sous-chaîne aucun numéro de version Games n’est figé ;
  • expose explicitement la classification canonique ADOPT / KEEP-LOCAL / OVERRIDE / DEFER / N/A avant son détail ligne par ligne.

docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md passe en révision 7 et conserve la vérité opérateur rc.1 FAIL ainsi que le scope borné du présent fix.

Aucune décision d'horizon n'est modifiée.

Gate opérateur

Après commit/push de rc.1 avec son history FAIL, appliquer ce delta puis exécuter :

cat VERSION

test -f history/0.1.5/rc.1.md
test -f deltas/0.1.5/rc.1.fix.1.md
test ! -e history/0.1.5/rc.1.fix.1.md

grep -Fx '0.1.5-rc.1.fix.1' VERSION
grep -A2 '^## Statut$' history/0.1.5/rc.1.md | grep -Fx 'FAIL'

grep -Fx '<!-- version: 21 -->' CHANGELOG.md
grep -F 'forte recommandation non obligatoire' CHANGELOG.md

grep -Fx '<!-- version: 2 -->' docs/studies/005-V0_1_5_HORIZON_REVIEW.md
grep -F 'aucun numéro de version Games n’est figé' docs/studies/005-V0_1_5_HORIZON_REVIEW.md
grep -F 'ADOPT / KEEP-LOCAL / OVERRIDE / DEFER / N/A' docs/studies/005-V0_1_5_HORIZON_REVIEW.md
grep -F 'conserver `0.1.6` comme prochaine release' docs/studies/005-V0_1_5_HORIZON_REVIEW.md
grep -F 'Aucun `0.1.9` n’est réservé' docs/studies/005-V0_1_5_HORIZON_REVIEW.md

grep -Fx '<!-- version: 7 -->' docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md
grep -F 'Gate `rc.1` en échec documentaire et correctif `rc.1.fix.1`' docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md
grep -F 'history/0.1.5/rc.1.md` enregistre donc le résultat réel `FAIL`' docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md
grep -F '`rel.1` reste bloqué tant que `rc.1.fix.1` n’est pas validé `PASS`' docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md

grep -Fx '<!-- version: 33 -->' README.md
grep -Fx '<!-- version: 18 -->' ROADMAP.md
grep -Fx '<!-- version: 52 -->' docs/000-README.md
grep -Fx '<!-- version: 1 -->' prompts/012-V0_1_6_START_PROMPT.md

grep -Fx '<!-- version: 16 -->' RULES.md
grep -Fx '<!-- version: 9 -->' docs/rules/210-WORKFLOW.md
grep -Fx '<!-- version: 3 -->' docs/rules/230-ADOPTION.md
grep -Fx '<!-- version: 5 -->' docs/rules/300-DOCUMENTATION.md
grep -Fx '<!-- version: 2 -->' docs/rules/400-VALIDATION.md

python3 -B -c "from pathlib import Path; expected={'0.0.1':12,'0.0.2':12,'0.0.3':10,'0.0.4':9,'0.0.5':19,'0.1.0':10,'0.1.1':11,'0.1.2':7,'0.1.3':6,'0.1.4':7}; assert all({p.name for p in Path('deltas',r).glob('*.md')} == {p.name for p in Path('history',r).glob('*.md')} and len(list(Path('deltas',r).glob('*.md'))) == n for r,n in expected.items()); assert {p.name for p in Path('deltas/0.1.5').glob('*.md')} == {'alpha.1.md','alpha.1.fix.1.md','alpha.2.md','alpha.3.md','alpha.4.md','beta.1.md','rc.1.md','rc.1.fix.1.md'}; assert {p.name for p in Path('history/0.1.5').glob('*.md')} == {'alpha.1.md','alpha.1.fix.1.md','alpha.2.md','alpha.3.md','alpha.4.md','beta.1.md','rc.1.md'}; print('0.1.5 rc.1.fix.1 history boundary: clean (110 closed prior pairs, current rc.1.fix.1 pending)')"

git diff --exit-code -- history/0.1.4

git diff --exit-code -- README.md ROADMAP.md docs/000-README.md \
    prompts/012-V0_1_6_START_PROMPT.md RULES.md \
    docs/objectives/001-PROJECT_OBJECTIVES.md \
    docs/architecture/002-GOVERNANCE_ARCHITECTURE.md \
    docs/rules/210-WORKFLOW.md docs/rules/220-SKELETONS.md \
    docs/rules/230-ADOPTION.md docs/rules/300-DOCUMENTATION.md \
    docs/rules/400-VALIDATION.md docs/rules/500-LANGUAGES.md \
    docs/rules/530-TYPESCRIPT.md docs/rules/540-JAVASCRIPT_PACKAGE_ECOSYSTEM.md \
    docs/rules/700-FRAMEWORKS.md \
    docs/skeletons/001-PROJECT_GOVERNANCE_FOUNDATION.md \
    docs/skeletons/003-WEB_FRONTEND.md \
    docs/templates/003-NEW_SESSION_PROMPT.md \
    docs/templates/007-EXISTING_PROJECT_ADOPTION.md \
    docs/templates/008-WEB_TYPESCRIPT_PACKAGE.md

python3 -B -m unittest discover -s tests -v

python3 -B scripts/audit_text_hygiene.py \
    README.md RULES.md ROADMAP.md CHANGELOG.md VERSION \
    docs deltas history prompts scripts tests templates .gitignore .settings

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 status --short

git add VERSION CHANGELOG.md \
    docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md \
    docs/studies/005-V0_1_5_HORIZON_REVIEW.md \
    deltas/0.1.5/rc.1.fix.1.md

git diff --cached --check
git status --short

Scope Git attendu

M  CHANGELOG.md
M  VERSION
A  deltas/0.1.5/rc.1.fix.1.md
M  docs/plans/011-V0_1_5_NORMATIVE_AUTONOMY_PLAN.md
M  docs/studies/005-V0_1_5_HORIZON_REVIEW.md

Transition

PASS

Produire history/0.1.5/rc.1.fix.1.md, committer/pousser 0.1.5-rc.1.fix.1, puis préparer rel.1 comme promotion stable mécanique sans nouveau scope.

FAIL

Enregistrer le résultat réel dans history/0.1.5/rc.1.fix.1.md et poursuivre sous rc.1.fix.N. Ne pas commencer rel.1 tant que le correctif RC n'est pas PASS.